Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by alzaimar,
23. Apr 2006
Du musst Dir überlegen, in wessen Kontext die Variable lebt.
Wenn z.B. Thread1 irgendetwas deklariert, verwendet oder kontrolliert, dann packst Du die Eigenschaft in Thread1:
Type
TMyThread = Class (TThread)
Private
fMyCS : TCriticalSection;
Public
Property MyValue : TSomeType Read GetValue Write SetValue;
End;
...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by alzaimar,
23. Apr 2006
Gemeinsam verwendete Resourcen/Variablen etc. sollten für den Zugriff grundsätzlich gekapselt werden, so etwa:
Procedure ThreadsafeSetValue (aMyValue : TSomeType);
Begin
myCS.Enter;
Try
fValue := aMyValue; // Na ja, fValue.Assign bei Objekten
Finally
myCS.Leave;
End
End;