tak jsou urcite situace, kdy je potreba nachvilu pockat nebo odpocitavat (10 ... 9 ... 8 ...
)
Ano, ale to se ve threadech dela tak, ze se nastartuje v OS timer a preda se mu jak parametr handle nektereho z
Obji a kdyz timer tickne, tak si to oblouzis ve vetvi WAIT_OBJECTS_0+ord(Obj
i). Tam si muzes odcitat do aleluja
a kde neni potreba soucinnost s jinou cinnosti ... nevim, jak bych tam tuto konstrukci upotrebil 
Vzdycky je treba soucinnost, minimalne s terminate request.
Je treba prestat vytvaret proceduralni spagetti kod a kooperativne se nedotazovat na ukonceni threadu jako se to delavalo za dob CP/M nebo Win 3.x, ale resit to jako sekvencni automat, ktery krome akci a prechodu ze stavu do stavu nekonzumuje zadny cas. A ziskas tim obecne rozsiritelnou strukturu, do ktere pridas pouze nove eventy, aniz bys v pripade nejake evoluce programu musel vsechno obracet naruby. A samozrejme to vola po nejakem abstraktnim predku, kdyz se pohybujeme ve svete OOD/OOP...
sleep ma takovy nasledky na procesor, kdyz to dela to stejny jak waitfor
Samotne sleep bude srovnatelne s WaitForXXX, ale vsechno zhorsuje, kdyz cekas v nejakem cyklu, protoze OS musi naprosto zbytecne vzbudit tvuj proces, nechat ho udelat pruchod cyklem a zase uspat. Kdezto kdyz budes cekat treba na 2 udalosti, jednu Terminate, druhou ke spusteni nejake akce, tak celou dobu bude tvuj thread suspendovan a vse se bude odehravat jen na urovni rezie OS.
Delici rovinu mezi technikami vidim v tom, zda programujes komponentove nebo objektove - v mych ocich zda jsi strikac nebo programator
