2009-03-01 19 views
0

yani bir satranç sayacı gibi çalışan bir semaphone var mı;Windows API "Satranç Timer" Sepmaphore Olay

Konu A, görevini tamamlar tepesine kadar geri dönüş yaparsa ve Semaphore

Bu onun kodu ile ilerler Konu 2 tetikler çağırır tepesine kadar geri dönüş yaparsa ve Semaphore

Bu tetikleyiciler aramaları Konu A hangi ...

Yani Semaphore engelleme ve sinyalizasyon hem de.

ben sadece iki etkinlik ve WaitForSingleObject kullanabilirsiniz biliyorum ama bu özellikle yapan bir semafor varsa merak ettiniz mi?

konu, bir olay ne kadar "pahalı" ve nasıl "pahalı" iken WaitForSingleObject() bellek ve CPU açısından nedir?

cevap

5

Hmmm ... Eğer iki konu hiç gerektiğinden emin misiniz? Eş-rutinleriniz eşzamanlı olarak çalışamaz gibi geliyor, en azından metaforu anlıyorsam. Bu durumda, onları aynı konuya koyun.

while (true) 
{ 
    task1(); 
    task2(); 
} 
+0

Uzunca sarılmış bir açıklama yapmadan, eşzamanlı olarak çalışamazlar. –

+1

sonra iki konuya ihtiyacınız yok. Dönemi. – SingleNegationElimination