mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
add TSRMLS_FETCH_CTX which allows you to map a variable to a ts context.
This is useful when you are mapping callbacks, you can simply associate a struct member to a thread context: void mycallback(my_struct *user) { TSRMLS_FETCH_CTX(user->thread_ctx); }
This commit is contained in:
parent
8820a9cdcc
commit
a294f9b2d1
1 changed files with 1 additions and 0 deletions
|
@ -149,6 +149,7 @@ TSRM_API void *tsrm_set_new_thread_end_handler(tsrm_thread_end_func_t new_thread
|
|||
#define TSRM_UNSHUFFLE_RSRC_ID(rsrc_id) ((rsrc_id)-1)
|
||||
|
||||
#define TSRMLS_FETCH() void ***tsrm_ls = (void ***) ts_resource_ex(0, NULL)
|
||||
#define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = (void ***) ctx
|
||||
#define TSRMG(id, type, element) (((type) (*((void ***) tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(id)])->element)
|
||||
#define TSRMLS_D void ***tsrm_ls
|
||||
#define TSRMLS_DC , TSRMLS_D
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue