2013-05-14 10 views
0

Windows Server 2003/Win Xp不支持條件變量,win server 2003中條件變量的功能可能還有其他選項嗎?windows server 2003中條件變量的選項

+0

要麼你選擇不支持Windows XP,要麼你必須處理操作系統提供的內容,如果前者不是選項。 – 2013-05-14 09:56:12

+0

@MichaelWalz我正在尋找條件變量的替代品......有沒有? – BJC 2013-05-14 10:00:25

+0

您可以從已存在的基元中構建條件變量。請參閱boost的boost :: thread :: condition_variable的實現。 [文檔](http://www.boost.org/doc/libs/1_53_0/doc/html/thread/synchronization.html),[來源](http://svn.boost.org/svn/boost/trunk /boost/thread/win32/condition_variable.hpp) – gimpf 2013-05-14 10:12:46

回答

1

重要部分,互斥量,信號量,事件。 Windows具有所有常見的同步原語。

+0

嗯..也許這應該是一條評論.. – 2013-05-14 09:51:37

+0

不,爲什麼?這是一個可用的答案。一個事件是一個條件變量,如果你想以這種方式來看 - 只有更少的糖。 – Damon 2013-05-14 10:05:56

+0

所有通常的同步原語?重要的原語是互斥和條件變量;其他的可以從它們合成(但如果直接在內核中實現,可能會更有效)。在那之後,最有用的一個是rwlock。 – 2013-05-14 10:22:46