|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
22.09.2016, 19:17 | #1 |
(aka Jin X) !RTFM!
Форумчанин
Регистрация: 14.12.2014
Сообщений: 295
|
SetEvent + WaitForSingleObject
Есть ли гарантия, что WaitForSingleObject успеет сработать, если другой поток сделает SetEvent и CloseHandle подряд?
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
|
22.09.2016, 19:23 | #2 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
а зачем стрелять себе в ногу?
мне кажется в момент SetEvent потоки/поток будут помечены на исполнение. вообще в любом случае выход у вас будет, как минимум потому что объект перестанет существовать =D Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
22.09.2016, 19:45 | #3 | |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,342
|
Нет, прямым текстом написано:
Цитата:
|
|
22.09.2016, 19:48 | #4 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
но вопрос про выстрел в ногу актуален. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
22.09.2016, 19:50 | #5 | |
(aka Jin X) !RTFM!
Форумчанин
Регистрация: 14.12.2014
Сообщений: 295
|
Цитата:
И что? Я же не собираюсь его закрывать до установки SetEvent. Я это буду делать после.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
|
|
22.09.2016, 19:54 | #6 |
(aka Jin X) !RTFM!
Форумчанин
Регистрация: 14.12.2014
Сообщений: 295
|
И ещё вопрос: каких значений не бывает у хэндла (кроме 0)?
Ну, например, 1 или -1.
Делаю лабы на Asm/Delphi/C++/Python/VBA(Excel): asmlabs.ru
|
22.09.2016, 19:58 | #7 | ||
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Цитата:
Из MSDN. If the time-out interval is greater than one tick but less than two, the wait can be anywhere between one and two ticks, and so on. Может между тиками системного таймера так и на границе. Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . |
||
22.09.2016, 20:03 | #8 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
22.09.2016, 20:14 | #9 | |
Лис
Старожил
Регистрация: 18.09.2015
Сообщений: 2,409
|
Цитата:
К примеру GetDC(0). handle - это обработчик. "Обработчик" синоним к слову "рабочий". Применяется для сокрытия реализации. В двух словах не объясню. Суть в том что можно рассматривать как номер виртуальной функции в некоторой таблице или массиве или case of (switch of). При этом в GetDC - это свои номера, в WaitForSingleObject свои номера у них разные таблицы. Для наведения порядка макрософт ввела понятия объект ядра. Только вот ещё больше запутала. Вот объекты ядра работают с хенделовыми номерами адресующих к общему массиву, общей таблице. Объекты ядра: https://msdn.microsoft.com/ru-ru/lib...(v=vs.85).aspx
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
У дзен программиста программа делает то что он хотел, а не то что он написал . Последний раз редактировалось Pavia; 22.09.2016 в 20:20. |
|
22.09.2016, 20:17 | #10 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
HDC это хэндл другой подсистемы, естественно там свои порядки.
Цитата:
никаких номеров функций там нет. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
TThread и WaitForSingleObject | xrob | Общие вопросы Delphi | 4 | 20.04.2014 14:13 |
Не срабатывает waitforsingleobject | peeper | Общие вопросы Delphi | 2 | 28.11.2013 16:10 |
Многопоточность showmodal и WaitForSingleObject | bulldog5293 | Общие вопросы Delphi | 24 | 24.01.2011 18:46 |
WaitForSingleObject | besserebrenik | Win Api | 3 | 15.02.2010 22:40 |
WaitForSingleObject в Delphi 2009 | Хамяг | Win Api | 11 | 03.12.2009 09:06 |