Ai
3 Star 4 Fork 1

bombax/以太坊源码分析

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
interface.go 1.83 KB
一键复制 编辑 原始数据 按行查看 历史
bombax 提交于 2021-10-30 17:41 +08:00 . modified: ethdb/interface.go
// Copyright 2014 The go-ethereum Authors
// This file is part of the go-ethereum library.
//
// The go-ethereum library is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// The go-ethereum library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with the go-ethereum library. If not, see <http://www.gnu.org/licenses/>.
package ethdb
// Code using batches should try to add this much data to the batch.
// The value was determined empirically.
// 批处理数据的最大值
const IdealBatchSize = 100 * 1024
// Putter wraps the database write operation supported by both batches and regular databases.
// 同时支持单挑数据写入和批量写入的操作
type Putter interface {
Put(key []byte, value []byte) error
}
// Database wraps all database operations. All methods are safe for concurrent use.
// 数据库接口定义了所有的数据库操作, 所有的方法都是多线程安全的。
type Database interface {
Putter
Get(key []byte) ([]byte, error)
Has(key []byte) (bool, error)
Delete(key []byte) error
Close()
NewBatch() Batch
}
// Batch is a write-only database that commits changes to its host database
// when Write is called. Batch cannot be used concurrently.
// 批量操作,不能并发操作,当 Write 方法被调用的时候,数据库会提交写入的更改
type Batch interface {
Putter
ValueSize() int // amount of data in the batch
Write() error
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/ismutou/ethereum-source-code-analysis.git
git@gitee.com:ismutou/ethereum-source-code-analysis.git
ismutou
ethereum-source-code-analysis
以太坊源码分析
master

搜索帮助