Показать сообщение отдельно

  #4  
Старый 29.03.2009, 21:28
AlexTheC0d3r
Постоянный
Регистрация: 25.07.2008
Сообщений: 454
Провел на форуме:
1229135

Репутация: 425
Отправить сообщение для AlexTheC0d3r с помощью ICQ
По умолчанию

Цитата:
Сообщение от KaZ@NoVa  
На примере какого языка???\

DELPHI
Каждая прога имеет процесс, в каждом процессе один или более потоков.
вообще потоки - такая весьма мнимая вещь. потому что они всё равно выполняются в процессоре последовательно.
реально параллельно она могут только на 2/4 ядерных работать.

скажем...создаём мы обычное приложение на формах (VCL-application).
Изначально мы имеем только один поток.
А в дельфе предусмотрен такой класс как TThread(вроде встроен, но точно не помню).
Он и управляет пакетами.
NewThread:=TNewThread.Create(true); - запускает поток с именем NewThread( предварительно надо объявить в var).
вся соль в тру/фолс.
тру - автоматически запустить поток
фолс - дождаться команды.
чаще используется тру.

Вот. поток создали. Теперь надо запустить.
Для этого создадим чтото вроде процедуры TNewThread.Execute

Называться должна именно Executr
В неё соответственно выполняем нужные нам действия.

Ещё полезные вещи....
New.FreeOnTerminate :=true/false
определяет будет ли уничтожен поток после завершения работы.

есть ещё NewThread.Priority
в нём приоритет потока указывавется( насколько он важен нам). какие значения принимает не помню.

NewThread.Resume; - ручной запуск потока( равносильно вызову екзекут).
разобрался до тебя, кстати по статейке намного понятнее

но всеравно +
 
Ответить с цитированием