9.1. test/pthread/pthread-1.01

Start felix section to test/pthread/pthread-1.01-0.flx[1 /1 ]
     1: #line 1535 "./lpsrc/flx_pthread.pak"
     2: #import <flx.flxh>
     3: include "flx_faio";
     4: include "pthread";
     5: open Pthread;
     6: 
     7: print "Pthread spawning test"; endl;
     8: 
     9: proc thr (x:int) { print "Thread "; print x; endl; }
    10: 
    11: proc flx_main
    12: {
    13:   print "Running main\n";
    14:   var chan = mk_pchannel[int]();
    15:   var dummy: int;
    16: 
    17:   spawn_pthread { thr 1; write (chan,1); };
    18:   spawn_pthread { thr 2; write (chan,2); };
    19:   spawn_pthread { thr 3; write (chan,3); };
    20:   spawn_pthread { thr 4; write (chan,4); };
    21:   spawn_pthread { thr 5; write (chan,5); };
    22:   spawn_pthread { thr 6; write (chan,6); };
    23:   spawn_pthread { thr 7; write (chan,7); };
    24:   print "Spawned\n";
    25:   &dummy <- read chan; // 1
    26:   print "joined "; print dummy; endl;
    27:   &dummy <- read chan; // 2
    28:   print "joined "; print dummy; endl;
    29:   &dummy <- read chan; // 3
    30:   print "joined "; print dummy; endl;
    31:   &dummy <- read chan; // 4
    32:   print "joined "; print dummy; endl;
    33:   &dummy <- read chan; // 5
    34:   print "joined "; print dummy; endl;
    35:   &dummy <- read chan; // 6
    36:   print "joined "; print dummy; endl;
    37:   &dummy <- read chan; // 7
    38:   print "joined "; print dummy; endl;
    39:   print "Joined all\n";
    40: }
    41: 
    42: export proc flx_main of (1) as "flx_main";
End felix section to test/pthread/pthread-1.01-0.flx[1]