![]() |
Delphi [Console App + TThread]
Собсно ламерский вопросец - можно ли, и как организовать многопоточность в консольном приложении?
в чем у меня лажа?...: делаю так: Код:
program Project1;Затем ради интереса проделываю аналогичное с использованием формы: Код:
unit Unit1;В чем грабли? :( |
Не катит... :(
|
Аналогично... :rolleyes:
|
Thread = class(TThread)
procedure Execute; override; end; когда создаешь класс, необходимо "создавать" класс... В пример тот же TStrings/TStringList/... |
DWORD WINAPI threadfunc()
{ printf("lol"); Sleep(1000); return 0; } void main() { HANDLE hthread; hthread = CreateThread(...); WaitForSingleObject(hthread, INFINITE); } можт результата не видишь потому что главный поток соскакивает до того как второй закончит исполнение. для этого WaitFor... |
Ту сноу! вместо слип(1000) тоже можно использовать ВаитФоСинглОбжект с нулевым событием и задержкой на 1000. Это вроде меньше ресурсов жрет.
|
2da_ff эээ какие там еще ресурсы сжираются?
|
да.. WaitSingleObject() следит за всеми трэдами.. и никакой слип не нужен )
|
Вот этот код стопроцентно работает
PHP код:
http://img112.imageshack.us/img112/4570/console1yv6.png |
2гема нахрена для этого еще класс этот дурацкий использовать? у снега все понятнее, проще и более того правильнее)
|
2da_ff: прочти этот fucking manual, и осмысли предназначение Sleep() и WaitForSingleObject()
|
| Время: 03:34 |