本文整理汇总了C++中SharedBuffer::get方法的典型用法代码示例。如果您正苦于以下问题:C++ SharedBuffer::get方法的具体用法?C++ SharedBuffer::get怎么用?C++ SharedBuffer::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SharedBuffer
的用法示例。
在下文中一共展示了SharedBuffer::get方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: _getData
// Retrieve the value from a positioned cursor.
RecordData WiredTigerRecordStore::_getData(const WiredTigerCursor& cursor) const {
WT_ITEM value;
int ret = cursor->get_value(cursor.get(), &value);
invariantWTOK(ret);
SharedBuffer data = SharedBuffer::allocate(value.size);
memcpy(data.get(), value.data, value.size);
return RecordData(data, value.size);
}
示例2: findRecord
bool TerarkDbRecordStore::findRecord(OperationContext* txn,
const RecordId& id,
RecordData* out) const {
if (id.isNull())
return false;
llong recIdx = id.repr() - 1;
CompositeTable* tab = m_table->m_tab.get();
auto& td = m_table->getMyThreadData();
tab->getValue(recIdx, &td.m_buf, &*td.m_dbCtx);
SharedBuffer bson = td.m_coder.decode(&tab->rowSchema(), td.m_buf);
// size_t bufsize = sizeof(SharedBuffer::Holder) + bson.objsize();
int bufsize = ConstDataView(bson.get()).read<LittleEndian<int>>();
*out = RecordData(bson, bufsize);
return true;
}