Merhaba, aşağıdaki Thread yapısında bir problem veya eksik var mı? Bu konuda yardımlarınızı bekliyorum.
Bu yapıdan benim beklediğim, uygulamayı kasmadan ve dondurmadan kendisine verilen komutları yapmasıdır. Ancak 2. işlemden sonra uygulamayı kasıyor.
implementation
....
....
....
type
TProgressThread = class(TThread)
private
protected
procedure Execute; override;
end;
{ TTestThread }
procedure TProgressThread.Execute;
var
i: Integer;
Yeni_Katalog,Yeni_Katalog_Alt_Bar:TLayout;
Yeni_Katalog_Resim,Yeni_Katalog_Arka_Plan:TRectangle;
Yeni_Katalog_Duvar_Panel:TLayout;
Yeni_Katalog_Bilgi_Etiketi:TLabel;
Yeni_Katalog_Yukleme_Durumu:TAniIndicator;
begin
inherited;
try
DataModule2.UniQuery1.Close;
DataModule2.UniQuery1.SQL.Clear;
DataModule2.UniQuery1.SQL.Text := 'Select * from kataloglar';
DataModule2.UniQuery1.Open;
DataModule2.UniQuery1.First;
While not (DataModule2.UniQuery1.Eof) do
begin
///İŞLEMLER BAŞLANGIÇ
........
///İŞLEMLER BİTİŞ
DataModule2.UniQuery1.Next;
end;
DataModule2.UniQuery1.Close;
except
on E:Exception do
begin
Log.d('Hata: ' + E.message);
end;
end;
FreeOnTerminate := True;
end;
Android Thread hakkında bir soru
-
- Üye
- Mesajlar: 86
- Kayıt: 21 Ara 2013 09:05
- İletişim:
Android Thread hakkında bir soru
[/size]http://www.componentler.com | Türkçe component sitesi
Re: Android Thread hakkında bir soru
Aslında potansiyel olarak bir değil birden fazla sorun var gibi görünüyor. Her ne amaçla kullanıyor olursanız olun, bir veri kaynağına erişimi thread vasıtası ile sağlayacaksanız; ilgili thread içinde yeni bir connection kurmalısınız. Tabii, thread içinde kullanılan ilgili connection'ın aynı zaman diliminde bir başka yerdede kullanılmayacağını garanti ediyorsanız! o zaman gönül rahatlığı ile yeni bir connection kurmadan mevcut connection'ı kullanabilirsiniz.
İkinci olarak, bir thread içinden VCL yada FMX kütüphanelerine başvuruda bulunacaksanız, bunun da senkronizasyon mekanizmaları ile sarmalanıp güvenli hale getirilmesi yada en basiti Synchronize vasıtası ile ana thread içinde çalıştırılması gerekir.
Ayrıca kodunuzun bir kısmını burada paylaşmamışsınız, o sebeple genel bir yorum yazabiliyorum ancak. Sitemde işinize yarayabilecek bazı thread makaleleri var; dilim döndüğünce, bilgim dahilinde bir şeyler karalamıştım zamanında. Belki ilginizi çeker.
İkinci olarak, bir thread içinden VCL yada FMX kütüphanelerine başvuruda bulunacaksanız, bunun da senkronizasyon mekanizmaları ile sarmalanıp güvenli hale getirilmesi yada en basiti Synchronize vasıtası ile ana thread içinde çalıştırılması gerekir.
Ayrıca kodunuzun bir kısmını burada paylaşmamışsınız, o sebeple genel bir yorum yazabiliyorum ancak. Sitemde işinize yarayabilecek bazı thread makaleleri var; dilim döndüğünce, bilgim dahilinde bir şeyler karalamıştım zamanında. Belki ilginizi çeker.
-
- Üye
- Mesajlar: 86
- Kayıt: 21 Ara 2013 09:05
- İletişim:
Re: Android Thread hakkında bir soru
Turgut hocam cevabınız için teşekkür ediyorum. Sitenizden bu konuyla ilgili yazılarınıza ulaştım, bu gece nasip olursa sizin yazılarınızı okuyup konuyu çözmeye çalışacağım. Saygılarımla
[/size]http://www.componentler.com | Türkçe component sitesi