- File:
-
- 1 edited
-
tests/concurrent/examples/gortn.cfa (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
tests/concurrent/examples/gortn.cfa
r49dee5e r97e8d1e 10 10 // Created On : Wed Feb 20 08:02:37 2019 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Jun 21 08:25:03201913 // Update Count : 412 // Last Modified On : Wed Feb 20 08:35:55 2019 13 // Update Count : 3 14 14 // 15 15 … … 18 18 19 19 struct Msg { int i, j; }; 20 thread Go Rtn { int i; float f; Msg m; };21 void ^?{}( Go Rtn & mutex ) {}22 void mem1( Go Rtn & mutex gortn, int i ) { gortn.i = i; }23 void mem2( Go Rtn & mutex gortn, float f ) { gortn.f = f; }24 void mem3( Go Rtn & mutex gortn, Msg m ) { gortn.m = m; }20 thread Gortn { int i; float f; Msg m; }; 21 void ^?{}( Gortn & mutex ) {} 22 void mem1( Gortn & mutex gortn, int i ) { gortn.i = i; } 23 void mem2( Gortn & mutex gortn, float f ) { gortn.f = f; } 24 void mem3( Gortn & mutex gortn, Msg m ) { gortn.m = m; } 25 25 26 void main( Go Rtn & gortn ) with( gortn ) {27 for ( ) {26 void main( Gortn & gortn ) with( gortn ) { 27 for ( ;; ) { 28 28 waitfor( mem1, gortn ) sout | i; 29 29 or waitfor( mem2, gortn ) sout | f; … … 33 33 } 34 34 int main() { 35 Go Rtn gortn; // start thread35 Gortn gortn; // start thread 36 36 mem1( gortn, 0 ); 37 37 mem2( gortn, 2.5 );
Note:
See TracChangeset
for help on using the changeset viewer.