Einzelnen Beitrag anzeigen

youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#1

TThread Verständnisfrage

  Alt 22. Feb 2011, 10:44
Hu,

ich habe 1 HauptThread, 1 Nebenthread und 1 Klasse die im Hauptthread erstellt wird.

Nur wie kann ich meinem Nebenthread die im Hauptthread erstellte klasse mit verwenden?

Hauptthread
Delphi-Quellcode:
type
  TMainThread = class(TThread)
  private
    NebenThread: TNebenthread;
  protected
    procedure Execute; override;
  public
    Klasse : TKlasse;
    constructor Create;
  end;
Nebenthread
Delphi-Quellcode:
type
  TNebenthread = class(TThread)
  private
  protected
    procedure Execute; override;
  public
    constructor Create;
  end;
Klasse
Delphi-Quellcode:
type
  TKlasse = class
    private
      Fsl: TStringList;
    public
      property sl: TStringList read Fsl;
      
      procedure Test;

      destructor Free;
      constructor Create;
    end;
Hauptthread
Delphi-Quellcode:
   Adressennet := TAdressennet.Create;

   Nebenthread := TNebenthread.Create;
   Nebenthread.Start;
NebenThread --> Delphi Tag gesetzt aber nimmt er wohl nicht
   MainThread.Klasse.Test;

Klasse Procedure Test --> Delphi Tag gesetzt aber nimmt er wohl nicht
   Fsl[0] := '132'; <<< Exception Zugriffsverletzung

Ich hoffe man kann die Struktur erkennen?

Mir geht es darum, das ich viele kleine Nebenthreads produzieren möchte die eine Aufgabe verarbeiten im Hauptthread.

Oder sollte man das doch lieber komplett splitten und lieber Mehrere Hauptthreads erstellen?
Steven

Geändert von youuu (22. Feb 2011 um 10:46 Uhr)
  Mit Zitat antworten Zitat