Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - TThread - Benötige Hilfe bei Erstellung von Threads
Xearox - Fr 13.02.15 08:36
Titel: TThread - Benötige Hilfe bei Erstellung von Threads
Hallo Zusammen,
schon lange nichts mehr in Delphi gemacht und wollte einfach mal wieder was neues Anfangen und habe das Thema Threads aufgeschnappt, wo ich leider total am verzweifeln bin :D
Ich habe nun etliche Seiten durch.
Hier im Forum habe ich dazu ein ziemlich einfaches Beispiel gefunden, was aber NULL funktioniert.
http://www.entwickler-ecke.de/topic_TThread+starten+was+fuer+parameter+muessen+enthalten+sein+_69926,0.html
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private public end;
type MeinThread1 = class(TThread) protected procedure Ausgabe; procedure Execute; override; public
end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure MeinThread1.Ausgabe; begin Form1.Memo1.Lines.Add('Text'); end;
procedure MeinThread1.Execute; begin Synchronize(Ausgabe); end;
procedure TForm1.Button1Click(Sender: TObject); var aThread : MeinThread1; begin aThread := MeinThread1.Create(false); end;
end. |
Nur das mit dem Button hab ich selbst eingefügt, um entsprechend den Thread zu starten.
Auch habe ich mir Beispiele von:
http://de.wikibooks.org/wiki/Programmierkurs:_Delphi:_Pascal:_Threads
http://www.opengl24.de/tutorials/multithreading
https://entwickler.de/online/mutlithreading-mit-delphi-116130.html
angeschaut, aber nichts davon bringt mir was, weil es einfach nicht funktionieren will.
Ich nutze Delphi 2010, wo darüber hinaus, resume und suspend als veraltet markiert sind, allerdings nutzen die Seiten, welche ich bisher gefunden habe, eben diese Kommandos.
Aber leider funktioniert noch nicht einmal das oben genannte Beispiel. Der Thread wird einfach nicht aufgerufen.
Vielen Dank =)
Nersgatt - Fr 13.02.15 08:45
Also bei mir funktioniert Dein Beispiel. Ich kann jetzt auch so keinen offensichtlichen Fehler finden. :nixweiss:
Nur ein paar Anmerkungen, die aber nichts mit dem Fehler zu tun haben:
Das 2. "type" im Interface kannst Du weglassen.
Die Klasse solltest Du TMeinThread1 nennen, um der üblichen Namensgebung zu folgen.
Xearox - Fr 13.02.15 08:54
Nersgatt hat folgendes geschrieben : |
Also bei mir funktioniert Dein Beispiel. Ich kann jetzt auch so keinen offensichtlichen Fehler finden. :nixweiss:
Nur ein paar Anmerkungen, die aber nichts mit dem Fehler zu tun haben:
Das 2. "type" im Interface kannst Du weglassen.
Die Klasse solltest Du TMeinThread1 nennen, um der üblichen Namensgebung zu folgen. |
Oh Oh ... das ist jetzt aber echt peinlich ... :oops:
Das OnClick Event hat vom Button1, wieso auch immer, gefehlt.
Ich glaube, es ist Zeit, sich ein wenig hin zu legen. Dann passiert sowas auch nicht mehr.
Vielen Dank Nersgatt.
Und allen anderen, die diesen Thread lesen.
Viel Spaß beim Karneval ;-)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!