Thrill
0.1
|
#include <block.hpp>
Public Member Functions | |
ByteBlockPtr & | byte_block () |
bool | ready () const |
whether the read is completed, cannot block. More... | |
PinnedBlock | Wait () |
wait and get the PinnedBlock. this may block until the read is complete. More... | |
Public Member Functions inherited from ReferenceCounter | |
ReferenceCounter () noexcept | |
new objects have zero reference count More... | |
ReferenceCounter (const ReferenceCounter &) noexcept | |
coping still creates a new object with zero reference count More... | |
~ReferenceCounter () | |
bool | dec_reference () const noexcept |
Call whenever resetting (i.e. More... | |
void | inc_reference () const noexcept |
Call whenever setting a pointer to the object. More... | |
ReferenceCounter & | operator= (const ReferenceCounter &) noexcept |
assignment operator, leaves pointers unchanged More... | |
size_t | reference_count () const noexcept |
Return the number of references to this object (for debugging) More... | |
bool | unique () const noexcept |
Test if the ReferenceCounter is referenced by only one CountingPtr. More... | |
Private Member Functions | |
PinRequest (BlockPool *block_pool, PinnedBlock &&block, bool ready=true) | |
void | OnComplete (foxxll::request *req, bool success) |
calls BlockPool::OnReadComplete used to tlx::delegate More... | |
Private Attributes | |
PinnedBlock | block_ |
BlockPool * | block_pool_ |
reference back to BlockPool More... | |
std::atomic< bool > | ready_ |
indication that the PinnedBlocks ready More... | |
foxxll::request_ptr | req_ |
running read request More... | |
|
inlineprivate |
|
inline |
Definition at line 340 of file block.hpp.
Referenced by BlockPool::OnReadComplete().
|
private |
calls BlockPool::OnReadComplete used to tlx::delegate
Definition at line 719 of file block_pool.cpp.
Referenced by BlockPool::PinBlock().
|
inline |
PinnedBlock Wait | ( | ) |
wait and get the PinnedBlock. this may block until the read is complete.
|
private |
pinned block which will be returned, this PinnedBlock may already be partially initialized for the read!
Definition at line 353 of file block.hpp.
Referenced by BlockPool::OnReadComplete().
|
private |
|
private |
indication that the PinnedBlocks ready
Definition at line 358 of file block.hpp.
Referenced by BlockPool::OnReadComplete().
|
private |