Changeset 163 for PinConnection/UCommSerialPort.pas
- Timestamp:
- Feb 8, 2011, 11:02:02 AM (14 years ago)
- Location:
- PinConnection
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
PinConnection
- Property svn:ignore
-
old new 1 1 lib 2 backup
-
- Property svn:ignore
-
PinConnection/UCommSerialPort.pas
r119 r163 6 6 7 7 uses 8 Classes, USerialPort, UCommPin, SysUtils; 8 Classes, USerialPort, UCommPin, SysUtils, UMicroThreading, DateUtils, 9 SyncObjs; 9 10 10 11 type … … 14 15 procedure ReceiveData(Stream: TMemoryStream); 15 16 public 17 Lock: TMicroThreadCriticalSection; 16 18 Pin: TCommPin; 17 19 destructor Destroy; override; … … 33 35 begin 34 36 inherited; 37 Lock := TMicroThreadCriticalSection.Create; 35 38 Pin := TCommPin.Create; 36 39 Pin.OnReceive := Receive; … … 42 45 OnReceiveData := nil; 43 46 Pin.Free; 47 Lock.Free; 44 48 inherited; 45 49 end; … … 49 53 Stream.Position := 0; 50 54 repeat 51 SendStreamRaw(Stream); 52 Sleep(1); 55 try 56 Lock.Acquire; 57 SendStreamRaw(Stream); 58 finally 59 Lock.Release; 60 end; 61 MTSleep(1 * OneMillisecond); 53 62 until Stream.Position = Stream.Size; 54 63 end;
Note:
See TracChangeset
for help on using the changeset viewer.