Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

Сколько раз можно вызывать SetEvent?   Найти похожие ветки 

 
Aleksandr ©   (2004-05-05 17:36) [0]

Эвент создается
CreateEvent(nil, True, False,PArr[i]), где PArr[i] - PChar, имя эвента. Затем он передается потоку, и поток резюмируется, на окончании своего Execute делая SetEvent данному хэндлу (поток, создавший событие, дожидается его установки). Но поток может быть резюмирован несколько раз, соответственно, он несколько раз будет устанавливать событие. А такое вообще можно?


 
Digitman ©   (2004-05-05 17:44) [1]


> А такое вообще можно?


почему нет ?


 
Aleksandr ©   (2004-05-05 18:46) [2]

Ну, мало ли, просто не знаю. Вдруг какие-то ограничения на то, сколько раз можно устанавливать события. Я, например, понятия не имею, что там за параметры переданы при создании события. Просто из сампла выдернул, а потом и задумался, а не приведет ли это к чему неприятному...


 
Digitman ©   (2004-05-05 18:55) [3]


> а не приведет ли это к чему неприятному


нет, не приведет, не волнуйся

главное - анализируй рез-т вызова SetEvent() - он тебе подскажет куда дальше ехать


 
Aleksandr ©   (2004-05-05 19:16) [4]

Да? Я даже и не думал, что там результат как-то анализировать надо...


 
Polevi ©   (2004-05-06 08:08) [5]

его всегда надо анализировать, если только в документации не указано что "ф-ия всегда возвращает 0" к примеру


 
Digitman ©   (2004-05-06 08:54) [6]


> Aleksandr ©   (05.05.04 19:16) [4]
> Да? Я даже и не думал, что там результат как-то анализировать
> надо...


здрасть ! а на что тогда функции существуют вообще ? ведь на то они и ф-ции, чтобы возвращать некий результат ..


 
han_malign ©   (2004-05-06 09:15) [7]

>на окончании своего Execute...
>... поток может быть резюмирован несколько раз
- может я чего не понимаю, но если поток завершился, то "резюмирование" не поможет

>анализируй рез-т вызова SetEvent()
- единственное на что можно напороться, так это на ERROR_INVALID_HANDLE, если объект("эвент") не создан или уже освобожден

З.Ы. А по поводу "окончании своего Execute" - есть TThread.WaitFor... Thread.Handle сам по себе является сигнальным объектом, по завершении приходя во "взведенное" состояние.


 
han_malign ©   (2004-05-06 09:21) [8]

>понятия не имею, что там за параметры переданы при создании события
- финиш - можно было и не распинаться - человеку даже Help влом прочитать...

>Вдруг какие-то ограничения на то, сколько раз можно устанавливать события.
- как думаешь, сколько раз можно булевской переменной присвоить true, может какие ограничения есть?



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
4-1080803647
melnikov ivan
2004-04-01 11:14
2004.05.23
Как пользоваться функцией VirtualQueryEx()?


3-1083320283
Timon
2004-04-30 14:18
2004.05.23
Помогите избавиться от ошибки?


4-1080663058
Дмитрий
2004-03-30 20:10
2004.05.23
Как при помощи WinAPI заморозить значение в памяти игры?


14-1082974970
Даже и не знаю кто я теперь.
2004-04-26 14:22
2004.05.23
Была тема про дизайн сайта. Это продолжение.


1-1084245986
Dark Man
2004-05-11 07:26
2004.05.23
Как заставить форму пропадать по подтверждению ???