b11437bda20123a1a821d03cf4de887b936d33bc
[ghc-hetmet.git] / includes / SchedAPI.h
1 /* -----------------------------------------------------------------------------
2  *
3  * (c) The GHC Team 1998-2002
4  *
5  * External API for the scheduler.  For most uses, the functions in
6  * RtsAPI.h should be enough.
7  *
8  * ---------------------------------------------------------------------------*/
9
10 #ifndef SCHEDAPI_H
11 #define SCHEDAPI_H
12
13 /* 
14  * Creating threads
15  */
16 StgTSO *createThread (Capability *cap, nat stack_size);
17
18 Capability *scheduleWaitThread (StgTSO *tso, /*out*/HaskellObj* ret,
19                                 Capability *cap);
20
21 StgTSO *createGenThread       (Capability *cap, nat stack_size,  
22                                StgClosure *closure);
23 StgTSO *createIOThread        (Capability *cap, nat stack_size,  
24                                StgClosure *closure);
25 StgTSO *createStrictIOThread  (Capability *cap, nat stack_size,  
26                                StgClosure *closure);
27 #endif