Class used to close files, each in its own thread, to avoid slowing down while file splitting.
More...
#include <FileWritingSupport.h>
|
| void | close () |
| | Stop & delete every thread that was started. More...
|
| |
| void | removeThread (std::shared_ptr< CloseAsyncFChan > &thread) |
| | Remove thread from vector. More...
|
| |
| void | closeAsyncFile (std::shared_ptr< std::fstream > &afc, std::shared_ptr< std::future< void >> &future1, std::shared_ptr< RecordSupply > &supply, std::shared_ptr< RecordRingItem > &ringItem, FileHeader &fileHeader, std::shared_ptr< std::vector< uint32_t >> &recordLengths, uint64_t bytesWritten, uint32_t recordNumber, bool addingTrailer, bool writeIndex, bool noFileWriting, ByteOrder &order) |
| | Close the given file, in the order received, in a separate thread. More...
|
| |
| | ~FileCloser () |
| |
Class used to close files, each in its own thread, to avoid slowing down while file splitting.
Unlike Java, C++ has no built-in thread pools so just create threads as needed.
◆ ~FileCloser()
| evio::FileCloser::~FileCloser |
( |
| ) |
|
|
inline |
◆ close()
| void evio::FileCloser::close |
( |
| ) |
|
|
inline |
Stop & delete every thread that was started.
Referenced by ~FileCloser().
◆ closeAsyncFile()
| void evio::FileCloser::closeAsyncFile |
( |
std::shared_ptr< std::fstream > & |
afc, |
|
|
std::shared_ptr< std::future< void >> & |
future1, |
|
|
std::shared_ptr< RecordSupply > & |
supply, |
|
|
std::shared_ptr< RecordRingItem > & |
ringItem, |
|
|
FileHeader & |
fileHeader, |
|
|
std::shared_ptr< std::vector< uint32_t >> & |
recordLengths, |
|
|
uint64_t |
bytesWritten, |
|
|
uint32_t |
recordNumber, |
|
|
bool |
addingTrailer, |
|
|
bool |
writeIndex, |
|
|
bool |
noFileWriting, |
|
|
ByteOrder & |
order |
|
) |
| |
|
inline |
Close the given file, in the order received, in a separate thread.
- Parameters
-
| afc | file channel to close |
| future1 | |
| supply | |
| ringItem | |
| fileHeader | |
| recordLengths | |
| bytesWritten | |
| recordNumber | |
| addingTrailer | |
| writeIndex | |
| noFileWriting | |
| order | |
◆ removeThread()
| void evio::FileCloser::removeThread |
( |
std::shared_ptr< CloseAsyncFChan > & |
thread | ) |
|
|
inline |
Remove thread from vector.
- Parameters
-
| thread | thread object to remove. |
The documentation for this class was generated from the following file: