Показать сообщение отдельно
  #4  
Старый 26.02.2009, 15:56
VALERO VALERO вне форума
Прохожий
 
Регистрация: 26.02.2009
Сообщения: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от Aristarh Dark
Есть свойство FreeOnTerminate ставь его в истину, поток будет освобождаться по окончании работы самостоятельно.

В таком случае не будет работать ф-ция waitfor. Хотя если знаешь как без нее обойтись, скажи...

Цитата:
Сообщение от lmikle
На вскидку:
1. Передать в поток некоторый callback, который будет вызван по завершению работы потока (не по завершению самого потока).
2. Внутри потока его не завершать, а просто делать ожидание задания работы. После того, как поток все выполнит, он вызывает переданный callback и переходит в режим ожидания (т.е. пустой цикл).

Нужно попробывать... А не будет ли поток, который преостановлен, загружать ядро процессора, в то время, когда после него будет запущен другой поток под это ядро? И еще... как сделать, чтобы основная программа ждала остановки потока? Если вызывать какойто колбек, то нужно както проверять в программе, что поток остановлен... Я пока знаю только два способа : через waitfor, который ожидает именно заверщения потока и через цикл, в котором проверяется остановлен ли поток или нет (но это помоему занимает много ресурсов)...
Ответить с цитированием