Einzelnen Beitrag anzeigen

Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#10

AW: Mehrere Threads: Gleicher (procedure)Code

  Alt 12. Apr 2017, 19:52
Um auf die Frage nochmal einzugehen:
Wenn aber beide Threads die Routine "Machwas1" (ist in meiner toolbox-unit) nutzen, kann das Probleme geben oder arbeiten beide Threads mit einer eigenen Kopie dieser Routine?
Delphi-Quellcode:
tMythread.execute;
begin
  for i:=0 to liste.count-1 do
    Ergebnis:=Machwas1(Liste[i],p1,p2);
end;
Nichts, was ich da sehe ist problematisch. Auch wenn es eine Liste ist und 2 Thread eine Referenz auf dieselbe Liste haben: Solange nur Lesezugriff stattfindet ist das alles OK.
Falls der 1. Parameter von Machwas1 ein var-parameter ist, der verändert wird, wäre das etwas anderes.

Für eine vollständige Aussage muss man aber den Code der Funktion kennen. Vielleicht passiert da drin noch etwas, was nicht threadsicher ist. Aber in dem genannten Code sehe ich keine Probleme.
  Mit Zitat antworten Zitat