Главная страница
    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.47 MB
Время: 0.036 c
14-1083743013
WondeRu
2004-05-05 11:43
2004.05.23
DMClient


14-1083239512
Соловьев
2004-04-29 15:51
2004.05.23
Вирус?


6-1080710055
Mistic
2004-03-31 09:14
2004.05.23
Зависание компа из-за сервера


14-1083087967
ИМХО
2004-04-27 21:46
2004.05.23
Выход в Инет через мобильник


3-1083244047
GEN
2004-04-29 17:07
2004.05.23
БД Access, проблема переноса на другую машину





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский