| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Сколько времени спит трэд? |
| Автор: Antropoid 3.10.2006, 08:50 | ||||
пусть есть
пусть другой трэд сделал
Можно ли узнать сколько времени спал трэд? |
| Автор: batigoal 3.10.2006, 09:16 |
| Можно попробовать обычным способом, с помощью Date. Но не уверен, хорошая ли будет точность при маленьких интервалах. |
| Автор: LSD 3.10.2006, 09:49 |
Нет, и даже нельзя узнать почему тред пробудился из-за таймаута или из-за notify. |
| Автор: Antropoid 3.10.2006, 12:54 | ||
LSD, мне казалось, что batigoal прав -->
|
| Автор: LSD 3.10.2006, 13:17 | ||||
| Прав в чем? Если ты получишь что ты ждал 100 миллисекунд вместо 10000, то тогда понятно что был вызван notify(). А вот если ты получишь 10008, толи ты по таймауту вышел, то ли в последний момент кто-то вызвал notify(). Если от того был вызван notify() или нет, зависит логика программы, то надо обязательно вводить флаг. P.S. Вместо:
лучше сразу писать:
|
| Автор: batigoal 3.10.2006, 13:30 |
| Если у нас вопрос , то нам ведь не важно, по каким именно причинам он проснулся. |
| Автор: COVD 3.10.2006, 17:18 |
| Если поставить малое время, например, wait(30), то поток может сам проснуться и через 60. |
| Автор: Antropoid 3.10.2006, 22:48 |
| Ладно, т.к. вопрос был , то считаю его решенным (правда, действительно, при описанном выше подходе возникают погрешности, но от этого, на сколько я понял, - никуда...) |