00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __THREAD_DEFS_XSB_H__
00025
00026 #define __THREAD_DEFS_XSB_H__
00027
00028
00029
00030
00031 #define XSB_THREAD_CREATE 1
00032 #define XSB_THREAD_EXIT 2
00033 #define XSB_THREAD_JOIN 3
00034 #define XSB_THREAD_DETACH 4
00035 #define XSB_THREAD_SELF 5
00036
00037 #define XSB_MUTEX_INIT 6
00038 #define XSB_MUTEX_LOCK 7
00039 #define XSB_MUTEX_TRYLOCK 8
00040 #define XSB_MUTEX_UNLOCK 9
00041 #define XSB_MUTEX_DESTROY 10
00042
00043 #define XSB_SYS_MUTEX_LOCK 11
00044 #define XSB_SYS_MUTEX_UNLOCK 12
00045
00046 #define XSB_ENSURE_ONE_THREAD 13
00047 #define XSB_THREAD_YIELD 14
00048
00049 #define XSB_SHOW_MUTEXES 15
00050
00051 #define XSB_SET_INIT_GLSTACK_SIZE 16
00052 #define XSB_SET_INIT_TCPSTACK_SIZE 17
00053 #define XSB_SET_INIT_PDL_SIZE 18
00054 #define XSB_SET_INIT_COMPLSTACK_SIZE 19
00055
00056 #define XSB_THREAD_PROPERTY 20
00057 #define XSB_THREAD_INTERRUPT 21
00058
00059 #define ABOLISH_PRIVATE_TABLES 22
00060 #define ABOLISH_SHARED_TABLES 23
00061
00062 #define MAX_THREADS 1024
00063
00064
00065
00066
00067 #define XSB_FAST_MUTEX 1
00068 #define XSB_RECURSIVE_MUTEX 2
00069 #define XSB_ERRORCHECK_MUTEX 3
00070
00071
00072
00073
00074
00075 #define MAX_SYS_MUTEXES 40
00076
00077
00078 #define LAST_REC_MUTEX 8
00079
00080
00081
00082
00083
00084
00085 #define MUTEX_DYNAMIC 0
00086
00087
00088
00089 #define MUTEX_IO 1
00090
00091
00092
00093
00094
00095 #define MUTEX_TABLE 2
00096 #define MUTEX_TRIE 3
00097 #define MUTEX_SYMBOL 4
00098 #define MUTEX_FLAGS 5
00099 #define MUTEX_LOAD_UNDEF 6
00100 #define MUTEX_DELAY 7
00101 #define MUTEX_SYS_SYSTEM 8
00102
00103
00104 #define MUTEX_STRING 15
00105 #define MUTEX_ATOM_BUF 16
00106 #define MUTEX_SM 17
00107 #define MUTEX_STACKS 18
00108 #define MUTEX_SOCKETS 19
00109 #define MUTEX_MEM 20
00110 #define MUTEX_ODBC 21
00111 #define MUTEX_GENTAG 22
00112
00113 #define MUTEX_DISPBLKHDR 23
00114
00115
00116 #define MUTEX_CONSOLE 30
00117 #define MUTEX_USER1 31
00118 #define MUTEX_USER2 32
00119 #define MUTEX_USER3 33
00120 #define MUTEX_USER4 34
00121 #define MUTEX_USER5 35
00122 #define MUTEX_USER6 36
00123 #define MUTEX_USER7 37
00124 #define MUTEX_USER8 38
00125 #define MUTEX_USER9 39
00126
00127
00128
00129 #define INIT_MT_RANDOM 0
00130 #define MT_RANDOM 1
00131 #define MT_RANDOM_INTERVAL 2
00132
00133 #endif