OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::TLSDataAccumulator< T > 類模板參考

具有收集方法的TLS資料累加器。 更多...

#include <opencv2/core/utils/tls.hpp>

cv::TLSDataAccumulator< T > 的協作圖

公共成員函式

 TLSDataAccumulator ()
 
 ~TLSDataAccumulator ()
 
void cleanup ()
 釋放關聯的執行緒資料。
 
void cleanupDetachedData ()
 釋放 detachData() 呼叫返回的關聯執行緒資料。
 
std::vector< T * > & detachData ()
 從所有執行緒獲取和分離資料。
 
void gather (std::vector< T * > &data) const
 從所有執行緒獲取資料。
 
void release ()
 釋放關聯的執行緒資料並釋放 TLS 金鑰。
 
- 繼承自 cv::TLSData< T > 的公共成員函式
 TLSData ()
 
 ~TLSData ()
 
void cleanup ()
 釋放關聯的執行緒資料。
 
T * get () const
 獲取與金鑰關聯的資料。
 
T & getRef () const
 獲取與金鑰關聯的資料。
 

保護成員函式

void _cleanupDetachedData ()
 
void _cleanupTerminatedData ()
 
virtual void * createDataInstance () const CV_OVERRIDE
 透過模板分配資料的包裝器。
 
virtual void deleteDataInstance (void *pData) const CV_OVERRIDE
 透過模板釋放資料的包裝器。
 
- 繼承自 cv::TLSData< T > 的保護成員函式
- 繼承自 cv::TLSDataContainer 的保護成員函式
 TLSDataContainer ()
 
virtual ~TLSDataContainer ()
 
void detachData (std::vector< void * > &data)
 獲取 TLS 資料並從執行緒分離所有資料(類似於 cleanup() 呼叫)
 
void gatherData (std::vector< void * > &data) const
 
void * getData () const
 
void release ()
 
void cleanup ()
 釋放建立的 TLS 資料容器物件。它類似於 release() 呼叫,但它保持 TLS 容器有效。
 

詳細描述

template<typename T>
class cv::TLSDataAccumulator< T >

具有收集方法的TLS資料累加器。

建構函式 & 解構函式文件

◆ TLSDataAccumulator()

template<typename T >
cv::TLSDataAccumulator< T >::TLSDataAccumulator ( )
inline

◆ ~TLSDataAccumulator()

template<typename T >
cv::TLSDataAccumulator< T >::~TLSDataAccumulator ( )
inline
此函式的呼叫圖如下

成員函式文件

◆ _cleanupDetachedData()

template<typename T >
void cv::TLSDataAccumulator< T >::_cleanupDetachedData ( )
inlineprotected
此函式的呼叫圖如下

◆ _cleanupTerminatedData()

template<typename T >
void cv::TLSDataAccumulator< T >::_cleanupTerminatedData ( )
inlineprotected
此函式的呼叫圖如下

◆ cleanup()

template<typename T >
void cv::TLSDataAccumulator< T >::cleanup ( )
inline

釋放關聯的執行緒資料。

此函式的呼叫圖如下

◆ cleanupDetachedData()

template<typename T >
void cv::TLSDataAccumulator< T >::cleanupDetachedData ( )
inline

釋放 detachData() 呼叫返回的關聯執行緒資料。

此函式的呼叫圖如下

◆ createDataInstance()

template<typename T >
virtual void * cv::TLSDataAccumulator< T >::createDataInstance ( ) const
inlineprotectedvirtual

透過模板分配資料的包裝器。

cv::TLSData< T > 重新實現。

◆ deleteDataInstance()

template<typename T >
virtual void cv::TLSDataAccumulator< T >::deleteDataInstance ( void * pData) const
inlineprotectedvirtual

透過模板釋放資料的包裝器。

cv::TLSData< T > 重新實現。

◆ detachData()

template<typename T >
std::vector< T * > & cv::TLSDataAccumulator< T >::detachData ( )
inline

從所有執行緒獲取和分離資料。

當不再需要返回的向量時,呼叫 cleanupDetachedData()

返回
包含關聯資料的向量。內容被保留(包括附加資料指標的生命週期),直到下一次 detachData()/cleanupDetachedData()/cleanup()/release() 呼叫
此函式的呼叫圖如下

◆ gather()

template<typename T >
void cv::TLSDataAccumulator< T >::gather ( std::vector< T * > & data) const
inline

從所有執行緒獲取資料。

已棄用
detachData() 替換

向量資料的生命週期在下一次 detachData()/cleanup()/release() 呼叫之前有效

引數
[輸出]data結果緩衝區(應為空)
此函式的呼叫圖如下

◆ release()

template<typename T >
void cv::TLSDataAccumulator< T >::release ( )
inline

釋放關聯的執行緒資料並釋放 TLS 金鑰。

此函式的呼叫圖如下

此類的文件是從以下檔案生成的