Index: src/libchcore/TOverlappedReaderFB.h =================================================================== diff -u -N -rf1d25f23712f5de7459f690ab51b2640d0f81b91 -r10d42e85d810f6da082cb2ce4415dcb72903410e --- src/libchcore/TOverlappedReaderFB.h (.../TOverlappedReaderFB.h) (revision f1d25f23712f5de7459f690ab51b2640d0f81b91) +++ src/libchcore/TOverlappedReaderFB.h (.../TOverlappedReaderFB.h) (revision 10d42e85d810f6da082cb2ce4415dcb72903410e) @@ -22,6 +22,7 @@ #include "TOverlappedReader.h" #include "TFilesystemFileFeedbackWrapper.h" #include "TOverlappedProcessorRange.h" +#include namespace chcore { @@ -44,6 +45,9 @@ ~TOverlappedReaderFB(); TSubTaskBase::ESubOperationResult Start(); + + void StartThreaded(); + TSubTaskBase::ESubOperationResult StopThreaded(); TOverlappedReaderPtr GetReader() const; void SetReleaseMode(); @@ -53,6 +57,7 @@ private: TSubTaskBase::ESubOperationResult UpdateFileStats(); + void ThreadProc(); private: TOverlappedReaderPtr m_spReader; @@ -61,6 +66,10 @@ TFilesystemFileFeedbackWrapperPtr m_spSrcFile; TSubTaskStatsInfoPtr m_spStats; TFileInfoPtr m_spSrcFileInfo; + + TWorkerThreadController& m_rThreadController; + std::unique_ptr m_spReadThread; + TSubTaskBase::ESubOperationResult m_eThreadResult = TSubTaskBase::eSubResult_Continue; }; using TOverlappedReaderFBPtr = std::shared_ptr;