Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Вниз

Сколько раз можно вызывать 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.033 c
1-1083911261
Ш-К
2004-05-07 10:27
2004.05.23
Имитация множественного наследования


1-1084274660
DimonNew
2004-05-11 15:24
2004.05.23
qtintf70.dll


14-1083255316
Daniel
2004-04-29 20:15
2004.05.23
Пропустить элемент из цепи полиморфных вызовов


9-1073226179
Zak3D[@Tm]
2004-01-04 17:22
2004.05.23
Создание игры.


6-1081172039
kentavr
2004-04-05 17:33
2004.05.23
Опять Net Send





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский