2
3
4
5#ifndef ae2f_Sys_Thrd_core_h
6#define ae2f_Sys_Thrd_core_h
16#define _ae2f_SysThrdRes_t DWORD
17#define _ae2f_SysThrdPrm_t LPVOID
18#define _ae2f_SysThrdID_t HANDLE
23
24
25
26#ifndef __ae2f_SysThrdStckTopOper
27#define __ae2f_SysThrdStckTopOper(prm_ptr, prm_sz) ((prm_ptr) + (prm_sz))
35#include <sys/syscall.h>
39#include <linux/sched.h>
42#include <ae2f/c90/StdInt.h>
44#define _ae2f_SysThrdRes_t int
45#define _ae2f_SysThrdPrm_t void*
46#define _ae2f_SysThrdID_t int
52
53
54
56 int_least64_t m_ftxret;
61} _ae2f_SysThrdRunnerPrm_t;
68} _ae2f_SysThrdStckPtr_t;
74 (prm_stck)->m_done = 0;
75 (prm_stck)->m_ret = (prm_stck->m_fn)((prm_stck)->m_arg);
76 (prm_stck)->m_done = 1;
80 , (&(prm_stck)->m_done)
94#define _ae2f_SysThrdRes_t void*
95#define _ae2f_SysThrdPrm_t void*
96#define _ae2f_SysThrdID_t pthread_t
#define ae2f_static_cast(t, v)
static_cast for C++
#define ae2f_reinterpret_cast(t, v)
reinterpret_cast for C++
@ ae2f_SysFtxWait_GOOD
Succesful.
#define _ae2f_SysFtxWait(ret_err, pprm_uaddr, prm_val)
#define _ae2f_SysFtxWakeOne(ret_err, pprm_uaddr)
_ae2f_SysFtxEl_t ae2f_SysFtxEl_t
Futex address element type.
#define unless(a)
Invokes when condition is false.
#define __ae2f_MACRO_GENERATED
#define ae2f_MAC(a)
A hint for creating a macro from void-returning function.
#define ae2f_Sys_WIN
System does not support this version. <ae2f_SysInetMk::prm_VerReq>.
#define ae2f_Sys__linux
Value expected did not match.
#define _ae2f_SysThrdJoin_imp(ret_stat, ret_rtn, ref_thrd)
#define _ae2f_SysThrdYield_imp()
#define _ae2f_SysThrdSleep_imp(ret_stat, prm_req, prm_rem)
#define ae2f_Sys_Thrd_auto_h
#define _ae2f_SysThrdMk_imp(ret_stat, ret_thrd, prm_func, prm_arg, prm_stcksz_unused)
#define _ae2f_SysThrdID_t
#define _ae2f_SysThrdPrm_t
#define _ae2f_SysThrdRes_t
ae2f_eSysThrd_t
enum values related to thread. 't follows C11 thread standard.
_ae2f_SysThrdRes_t ae2f_SysThrdRes_t
Return type for thread.
_ae2f_SysThrdPrm_t ae2f_SysThrdPrm_t
Parameters for thread.
ae2f_SysThrdRes_t ae2f_SysThrdFn_t(ae2f_SysThrdPrm_t)
Thread starting function type.
_ae2f_SysThrdID_t ae2f_SysThrdID_t
Thread ID.
#define ae2f_restrict
Keyword as restrict on C99.