Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.09.14;
Скачать: CL | DM;

Вниз

beginthread   Найти похожие ветки 

 
Res   (2008-08-02 04:29) [0]

Здравствуйте. Проблема в том что при создании потока в Label появляется всякая белебурда, вместо посылаемого значения.. подскажите в чем проблема


procedure thread(param:pointer);
var
command:^string;
smail:string;
begin
command:=param;
smail:=command^;
form1.Label1.Caption:=smail;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
smail:string;
id:LongWord;
begin
smail:="aaaa";
BeginThread(nil,0,Addr(thread),Addr(smail),0,id);

end;


Заранее благодарен.


 
Riply ©   (2008-08-02 09:13) [1]

Потому что ты не чукча-читатель :)

P.S.
1. На любом форуме есть статьи по работе с нитями.
2. У тебя есть исходники TThread
3. В Demos есть хороший пример по работе с нитями
4. И наконец существует MSDN
5. Про гугл уж я помалкиваю :)

Не... ты не удосужился никуда заглянуть хоть одним глазком, хотя бы ради интереса.


 
Anatoly Podgoretsky ©   (2008-08-02 11:03) [2]

До пунктов 1-5 еще рано, он не умеет работать с Паскалем, базовой теории не знает, что толку искать в статьях, если он в них ничего не поймет.


 
Loginov Dmitry ©   (2008-08-02 12:50) [3]

> подскажите в чем проблема


основная в том, что ты не понимаешь, что этот код делает.

1) Ты передаешь в BeginThread() адрес локальной переменной с ограниченным временем жизни. Это глупо, хотя возможно и прокатить в случае, когда строке присвоена константа (но в общем случае работать не будет).

2) Общащаешься к VCL из дополнительного потока. Этого делать НЕЛЬЗЯ!!! Используй для обращения к VCL SendMessage() либо TThread.Syncronize() ( http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1370 )

3) Что за танцы с бубном:
command:=param;
smail:=command^;

?

4) Не мучай фукнцию BeginThread(). Изучи наконец класс TThread, примеров работы с ним - море. Заведи строковое поле, ему свою строку присваивай.



Страницы: 1 вся ветка

Текущий архив: 2008.09.14;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
2-1217518989
Евгений Р.
2008-07-31 19:43
2008.09.14
Есть ли такой компонент?


15-1216906570
Jeer
2008-07-24 17:36
2008.09.14
Третий Всероссийский Слет Сисадминов


2-1217587744
Аннушка21
2008-08-01 14:49
2008.09.14
связать раблицы dbf


3-1205489996
Павел Калугин
2008-03-14 13:19
2008.09.14
Грабли с MySql


2-1217780383
q911
2008-08-03 20:19
2008.09.14
Браузер на Delphi