Главная страница
    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.45 MB
Время: 0.048 c
2-1217300882
apic
2008-07-29 07:08
2008.09.14
иконки


2-1217335734
Turboon
2008-07-29 16:48
2008.09.14
Моя программа долго загружается


15-1216271482
Dennis I. Komarov
2008-07-17 09:11
2008.09.14
MS WinXP SP3


2-1217337692
Kolan
2008-07-29 17:21
2008.09.14
Работа с веб-сервисом.


2-1217484390
a.a.j.
2008-07-31 10:06
2008.09.14
inifiles vs xml





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский