ライブラリ Loki と新しい標準 C++11 についていくつか質問があります。
私の最初の質問はLevelMutex
、ライブラリの機能についてです。
機能を実装するために、Windows とLinux でLevelMutex
を直接使用します。クラスは非常によく設計されていますが、頭の中に疑問が残ります。新しい標準 ( ) に真新しいラッパーができたので、プラットフォームに依存する低レベル オブジェクトをこれに置き換える価値はありますか? そうでない場合、なぜですか?私の要点は、- Loki で多くのコンパイラ チェックを削除できることです。Loki の最新バージョンを維持でき、標準ライブラリで変更が発生した場合、すべての変更が Loki にプッシュされます。Loki の例外を使用できます。CRITICAL_SECTION
pthread_mutex_t
std::mutex
std::mutex
私はそれstd::mutex
がプラットフォームミューテックスオブジェクトの単なるラッパーであり、例外もシステム固有のエラーのラッパーであることを知っていますが、それでも...同じ質問が の機能に適用されThreads.h
ます。
2 番目の質問はSmartPtr
、Loki に実装されている についてです。shared_ptr
、などがあるという事実を考えると、この実装を使用する価値があると思います
unique_ptr
か? もしそうなら、なぜですか?そうでない場合は、 LockingPtr 実装を少し書き直して、スレッドセーフな shared_ptr を取得することをお勧めします。
最後の質問はstd::thread
、C++11 標準の新しい機能についてです。結合可能なスレッドや取り外し可能なスレッドを作成する機能など、この特定の機能のポリシー クラスを作成することを考えています。のどの部分についてstd::thread
ポリシーを作成するのが興味深いと思いますか?
回答ありがとうございます!