ae2f_docs
Thrd.auto.h File Reference

Contains various implementations which could be various. More...

#include <ae2f/Sys/Thrd.h>

Go to the source code of this file.

Macros

#define __ae2f_MACRO_GENERATED   1
#define __ae2f_MACRO_GENERATED   1
#define ae2f_Sys_Thrd_auto_h
#define _ae2f_SysThrdMk_imp(ret_stat, ret_thrd, prm_func, prm_arg, prm_stcksz_unused)
#define _ae2f_SysThrdJoin_imp(ret_stat, ret_rtn, ref_thrd)
#define _ae2f_SysThrdSleep_imp(ret_stat, prm_req, prm_rem)
#define _ae2f_SysThrdYield_imp()
#define __ae2f_MACRO_GENERATED   0

Detailed Description

Contains various implementations which could be various.

Following operations would be implemented

create join sleep yield delete

Definition in file Thrd.auto.h.

Macro Definition Documentation

◆ __ae2f_MACRO_GENERATED [1/3]

#define __ae2f_MACRO_GENERATED   1

Definition at line 2 of file Thrd.auto.h.

◆ __ae2f_MACRO_GENERATED [2/3]

#define __ae2f_MACRO_GENERATED   1

Definition at line 2 of file Thrd.auto.h.

◆ __ae2f_MACRO_GENERATED [3/3]

#define __ae2f_MACRO_GENERATED   0

Definition at line 2 of file Thrd.auto.h.

◆ _ae2f_SysThrdJoin_imp

#define _ae2f_SysThrdJoin_imp ( ret_stat,
ret_rtn,
ref_thrd )
Value:
{ \
switch(pthread_join((ref_thrd).m_id, &(ret_rtn))) \
{ \
case EDEADLK: \
(ret_stat) = ae2f_eSysThrdBusy; \
break; \
case EINVAL: \
(ret_stat) = (ae2f_eSysThrdErr); \
break; \
case ESRCH: \
(ret_stat) = (ae2f_eSysThrdMemOut); \
break; \
case 0: \
(ret_stat) = ae2f_eSysThrdSuccess; \
break; \
} \
}
@ ae2f_eSysThrdMemOut
Definition Thrd.h:38
@ ae2f_eSysThrdSuccess
Definition Thrd.h:35

tparam param

Definition at line 333 of file Thrd.auto.h.

◆ _ae2f_SysThrdMk_imp

#define _ae2f_SysThrdMk_imp ( ret_stat,
ret_thrd,
prm_func,
prm_arg,
prm_stcksz_unused )
Value:
{ \
(ret_stat) = pthread_create( \
&(ret_thrd).m_id \
, ae2f_reinterpret_cast(const pthread_attr_t*, NULL) \
, prm_func \
, prm_arg \
); \
\
switch(ret_stat) { \
case 0: \
(ret_stat) = ae2f_eSysThrdSuccess; \
break; \
\
case EAGAIN: \
(ret_stat) = ae2f_eSysThrdMemOut; \
break; \
\
case EINVAL: \
case EPERM: \
default: \
(ret_stat) = ae2f_eSysThrdErr; \
break; \
} \
}
#define ae2f_reinterpret_cast(t, v)
Definition Cast.h:52
Parameters
prm_stacksz_unusedis not used here. tparam param

Definition at line 297 of file Thrd.auto.h.

◆ _ae2f_SysThrdSleep_imp

#define _ae2f_SysThrdSleep_imp ( ret_stat,
prm_req,
prm_rem )
Value:
{ \
(ret_stat) = nanosleep(prm_req, prm_rem); \
}

tparam param

Definition at line 361 of file Thrd.auto.h.

◆ _ae2f_SysThrdYield_imp

#define _ae2f_SysThrdYield_imp ( )
Value:
{ \
sched_yield(); \
}

tparam param

Definition at line 374 of file Thrd.auto.h.

◆ ae2f_Sys_Thrd_auto_h

#define ae2f_Sys_Thrd_auto_h

Definition at line 25 of file Thrd.auto.h.