簡體   English   中英

重新編寫此智能指針

[英]Re-writing this smart pointer

我將一些代碼從ACE轉移到Poco。 我是多線程設計的新手,所以讓我有些困惑!

typedef Arc::AutoPtr<ResultSet, ACE_Thread_Mutex> QueryResult;

我無法像這樣重新編寫它,因為Poco :: AutoPtr僅接受一個參數作為類模板

typedef Poco::AutoPtr<ResultSet, Poco::Mutex> QueryResult;

我應該怎么寫?

我不確定Arc::AutoPtr是什么,因為我在ACE文檔中找不到類似的內容。 但是,如果它與ACE_Refcounted_Auto_Ptr相同,則Poco的對應typedef可能就是typedef Poco::SharedPtr<ResultSet> QueryResult; 但是從文檔中尚不清楚Poco中的SharedPtr是否實現了線程安全引用計數,因此您必須注意這一點。

Poco::AutoPtr實際上是一個侵入式智能指針,它需要指向類型的支持(類似於boost::intrusive_ptr )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM