[gforth] / gforth / unix / pthread.fs  

gforth: gforth/unix/pthread.fs

Diff for /gforth/unix/pthread.fs between version 1.8 and 1.9

version 1.8, Thu Mar 15 00:12:38 2012 UTC version 1.9, Thu Mar 15 13:37:25 2012 UTC
Line 136 
Line 136 
   
 saved-ip save-task !  saved-ip save-task !
   
   :noname    ' >body @ ;
   :noname    ' >body @ postpone literal ;
   interpret/compile: user' ( 'user' -- n )
   \G USER' computes the task offset of a user variable
   
 : >task ( user task -- user' )  + next-task - ;  : >task ( user task -- user' )  + next-task - ;
   
 : NewTask ( stacksize -- task )  : NewTask ( stacksize -- task )
     dup 2dup gforth_create_thread >r      dup 2dup gforth_create_thread >r
     handler r@ udp @ handler next-task - /string move      handler r@ udp @ handler next-task - /string move
     saved-ip r@ >task save-task r@ >task !      saved-ip r@ >task save-task r@ >task !
       word-pno-size chars dup allocate throw dup holdbufptr r@ >task !
       + dup holdptr r@ >task !  holdend r@ >task !
     r> ;      r> ;
   
 : activate ( task -- )  : activate ( task -- )
Line 149 
Line 156 
     saved-ip r@ >task !      saved-ip r@ >task !
     pthread-id r@ >task 0 thread_start r> pthread_create drop ;      pthread-id r@ >task 0 thread_start r> pthread_create drop ;
   
 : semaphore ( "name" -- )  : sema ( "name" -- ) \ gforth
       \G create a named semaphore
     Create here 1 pthread-mutexes allot 0 pthread_mutex_init drop ;      Create here 1 pthread-mutexes allot 0 pthread_mutex_init drop ;
   
 : lock ( addr -- )  pthread_mutex_lock drop ;  : lock ( addr -- )  pthread_mutex_lock drop ;


Generate output suitable for use with a patch program
Legend:
Removed from v.1.8  
changed lines
  Added in v.1.9

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help