2017-08-10 06:39:58 +02:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
2020-12-28 22:12:25 +01:00
< meta name = "generator" content = "Doxygen 1.8.11" / >
2017-08-10 06:39:58 +02:00
< title > OpenJPEG: thread.c File Reference< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td id = "projectalign" style = "padding-left: 0.5em;" >
< div id = "projectname" > OpenJPEG
2020-12-28 22:12:25 +01:00
  < span id = "projectnumber" > 2.4.0< / span >
2017-08-10 06:39:58 +02:00
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
2020-12-28 22:12:25 +01:00
<!-- Generated by Doxygen 1.8.11 -->
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "pages.html" > < span > Related  Pages< / span > < / a > < / li >
< li > < a href = "modules.html" > < span > Modules< / span > < / a > < / li >
< li > < a href = "annotated.html" > < span > Data  Structures< / span > < / a > < / li >
< li class = "current" > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< / ul >
< / div >
< div id = "navrow2" class = "tabs2" >
< ul class = "tablist" >
< li > < a href = "files.html" > < span > File  List< / span > < / a > < / li >
< li > < a href = "globals.html" > < span > Globals< / span > < / a > < / li >
< / ul >
< / div >
2017-08-10 06:39:58 +02:00
< div id = "nav-path" class = "navpath" >
< ul >
2020-12-28 22:12:25 +01:00
< li class = "navelem" > < a class = "el" href = "dir_43e0a1f539e00dcfa1a6bc4d4fee4fc2.html" > home< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_cb9b2b419d92b64f7cee83d8faf7a4ab.html" > even< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_f75d9a0165d6564a1e04793ef847d41d.html" > openjpeg< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_5f588d7ea139c1aae751d03c13a16064.html" > openjpeg< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_378f732e812ef6cbaaae22e96a4fa79f.html" > src< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_19dcb5713315405a27e1bde75a489a4c.html" > lib< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_54e5bc4f0640fea590afaf04f4d9c88d.html" > openjp2< / a > < / li > < / ul >
2017-08-10 06:39:58 +02:00
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "summary" >
< a href = "#nested-classes" > Data Structures< / a > |
< a href = "#typedef-members" > Typedefs< / a > |
< a href = "#enum-members" > Enumerations< / a > |
< a href = "#func-members" > Functions< / a > < / div >
< div class = "headertitle" >
< div class = "title" > thread.c File Reference< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
2017-10-05 00:57:21 +02:00
< div class = "textblock" > < code > #include < assert.h> < / code > < br / >
< code > #include " < a class = "el" href = "opj__includes_8h_source.html" > opj_includes.h< / a > " < / code > < br / >
2017-08-10 06:39:58 +02:00
< / div > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "nested-classes" > < / a >
Data Structures< / h2 > < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__tls__key__val__t.html" > opj_tls_key_val_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__worker__thread__job__t.html" > opj_worker_thread_job_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__worker__thread__t.html" > opj_worker_thread_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__job__list__t.html" > opj_job_list_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__worker__thread__list__t.html" > opj_worker_thread_list_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "typedef-members" > < / a >
Typedefs< / h2 > < / td > < / tr >
< tr class = "memitem:a49bc29f76a9aaa7d5429ca2aa658d042" > < td class = "memItemLeft" align = "right" valign = "top" > typedef struct < a class = "el" href = "structopj__job__list__t.html" > opj_job_list_t< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a49bc29f76a9aaa7d5429ca2aa658d042" > opj_job_list_t< / a > < / td > < / tr >
< tr class = "separator:a49bc29f76a9aaa7d5429ca2aa658d042" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a7e5ebd302ebe1fec27a59e0a97f3775d" > < td class = "memItemLeft" align = "right" valign = "top" > typedef struct < a class = "el" href = "structopj__worker__thread__list__t.html" > opj_worker_thread_list_t< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a7e5ebd302ebe1fec27a59e0a97f3775d" > opj_worker_thread_list_t< / a > < / td > < / tr >
< tr class = "separator:a7e5ebd302ebe1fec27a59e0a97f3775d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "enum-members" > < / a >
Enumerations< / h2 > < / td > < / tr >
< tr class = "memitem:a72b07be38efb141bb1f0456227d233e5" > < td class = "memItemLeft" align = "right" valign = "top" > enum   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5" > opj_worker_thread_state< / a > { < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a837ff250630d32ebcbdec8ab7545cd23" > OPJWTS_OK< / a > ,
< a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a3e1ea93366aedb1abcd0498bf72db68a" > OPJWTS_STOP< / a > ,
< a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a6ef08c3281ba796adc681df793f69dfd" > OPJWTS_ERROR< / a >
2019-04-02 16:25:55 +02:00
}< / td > < / tr >
< tr class = "separator:a72b07be38efb141bb1f0456227d233e5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2017-08-10 06:39:58 +02:00
< / table > < table class = "memberdecls" >
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a name = "func-members" > < / a >
Functions< / h2 > < / td > < / tr >
< tr class = "memitem:aae69d6e8a731757a983888c4047d3e3b" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a > < a class = "el" href = "openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b" > OPJ_CALLCONV< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#aae69d6e8a731757a983888c4047d3e3b" > opj_has_thread_support< / a > (void)< / td > < / tr >
< tr class = "memdesc:aae69d6e8a731757a983888c4047d3e3b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Returns if the library is built with thread support. < a href = "#aae69d6e8a731757a983888c4047d3e3b" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:aae69d6e8a731757a983888c4047d3e3b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a93ce856805936340ca26e98bcf3f4996" > < td class = "memItemLeft" align = "right" valign = "top" > int < a class = "el" href = "openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b" > OPJ_CALLCONV< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a93ce856805936340ca26e98bcf3f4996" > opj_get_num_cpus< / a > (void)< / td > < / tr >
< tr class = "memdesc:a93ce856805936340ca26e98bcf3f4996" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Return the number of virtual CPUs. < a href = "#a93ce856805936340ca26e98bcf3f4996" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a93ce856805936340ca26e98bcf3f4996" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gaa81ea27e801a8c0cf453b256ab38e067" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga29120af1ce48d5ecd651795f2e427755" > opj_mutex_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gaa81ea27e801a8c0cf453b256ab38e067" > opj_mutex_create< / a > (void)< / td > < / tr >
< tr class = "memdesc:gaa81ea27e801a8c0cf453b256ab38e067" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Creates a mutex. < a href = "group___t_h_r_e_a_d.html#gaa81ea27e801a8c0cf453b256ab38e067" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gaa81ea27e801a8c0cf453b256ab38e067" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gab38a90b92a1d294f7e1886e36a405518" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gab38a90b92a1d294f7e1886e36a405518" > opj_mutex_lock< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga29120af1ce48d5ecd651795f2e427755" > opj_mutex_t< / a > *mutex)< / td > < / tr >
< tr class = "memdesc:gab38a90b92a1d294f7e1886e36a405518" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Lock/acquire the mutex. < a href = "group___t_h_r_e_a_d.html#gab38a90b92a1d294f7e1886e36a405518" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gab38a90b92a1d294f7e1886e36a405518" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gacf1f5a5f7f7257663505af02b717272c" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gacf1f5a5f7f7257663505af02b717272c" > opj_mutex_unlock< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga29120af1ce48d5ecd651795f2e427755" > opj_mutex_t< / a > *mutex)< / td > < / tr >
< tr class = "memdesc:gacf1f5a5f7f7257663505af02b717272c" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Unlock/release the mutex. < a href = "group___t_h_r_e_a_d.html#gacf1f5a5f7f7257663505af02b717272c" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gacf1f5a5f7f7257663505af02b717272c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga66757c34c788b873ad9acfb60a5e008b" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga66757c34c788b873ad9acfb60a5e008b" > opj_mutex_destroy< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga29120af1ce48d5ecd651795f2e427755" > opj_mutex_t< / a > *mutex)< / td > < / tr >
< tr class = "memdesc:ga66757c34c788b873ad9acfb60a5e008b" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Destroy a mutex. < a href = "group___t_h_r_e_a_d.html#ga66757c34c788b873ad9acfb60a5e008b" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga66757c34c788b873ad9acfb60a5e008b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga7f8a4c1ce6d9ad2dde1d293fad317522" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga439cd27c17f11fc56a911a126811fb87" > opj_cond_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga7f8a4c1ce6d9ad2dde1d293fad317522" > opj_cond_create< / a > (void)< / td > < / tr >
< tr class = "memdesc:ga7f8a4c1ce6d9ad2dde1d293fad317522" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Creates a condition. < a href = "group___t_h_r_e_a_d.html#ga7f8a4c1ce6d9ad2dde1d293fad317522" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga7f8a4c1ce6d9ad2dde1d293fad317522" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga6edf64f08cd0b48299800852d52245d6" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga6edf64f08cd0b48299800852d52245d6" > opj_cond_wait< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga439cd27c17f11fc56a911a126811fb87" > opj_cond_t< / a > *cond, < a class = "el" href = "group___t_h_r_e_a_d.html#ga29120af1ce48d5ecd651795f2e427755" > opj_mutex_t< / a > *mutex)< / td > < / tr >
< tr class = "memdesc:ga6edf64f08cd0b48299800852d52245d6" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Wait for the condition to be signaled. < a href = "group___t_h_r_e_a_d.html#ga6edf64f08cd0b48299800852d52245d6" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga6edf64f08cd0b48299800852d52245d6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga0f3687b35d6f3c395e1156a8499d1632" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga0f3687b35d6f3c395e1156a8499d1632" > opj_cond_signal< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga439cd27c17f11fc56a911a126811fb87" > opj_cond_t< / a > *cond)< / td > < / tr >
< tr class = "memdesc:ga0f3687b35d6f3c395e1156a8499d1632" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Signal waiting threads on a condition. < a href = "group___t_h_r_e_a_d.html#ga0f3687b35d6f3c395e1156a8499d1632" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga0f3687b35d6f3c395e1156a8499d1632" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gafba4c2356f6d070d43e5f0d5c71fdbee" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gafba4c2356f6d070d43e5f0d5c71fdbee" > opj_cond_destroy< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#ga439cd27c17f11fc56a911a126811fb87" > opj_cond_t< / a > *cond)< / td > < / tr >
< tr class = "memdesc:gafba4c2356f6d070d43e5f0d5c71fdbee" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Destroy a condition. < a href = "group___t_h_r_e_a_d.html#gafba4c2356f6d070d43e5f0d5c71fdbee" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gafba4c2356f6d070d43e5f0d5c71fdbee" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga541be683ba651c8244bde3f0d3650c92" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "group___t_h_r_e_a_d.html#gaed72b7b75acb6eaeb620085b01ee365b" > opj_thread_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga541be683ba651c8244bde3f0d3650c92" > opj_thread_create< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#gae5f9aa8219645e0e836aaf0c453db624" > opj_thread_fn< / a > thread_fn, void *user_data)< / td > < / tr >
< tr class = "memdesc:ga541be683ba651c8244bde3f0d3650c92" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Creates a new thread. < a href = "group___t_h_r_e_a_d.html#ga541be683ba651c8244bde3f0d3650c92" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga541be683ba651c8244bde3f0d3650c92" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gad49986b56da75f8609b7c940c17f713f" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gad49986b56da75f8609b7c940c17f713f" > opj_thread_join< / a > (< a class = "el" href = "group___t_h_r_e_a_d.html#gaed72b7b75acb6eaeb620085b01ee365b" > opj_thread_t< / a > *thread)< / td > < / tr >
< tr class = "memdesc:gad49986b56da75f8609b7c940c17f713f" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Wait for a thread to be finished and release associated resources to the thread handle. < a href = "group___t_h_r_e_a_d.html#gad49986b56da75f8609b7c940c17f713f" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gad49986b56da75f8609b7c940c17f713f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a28308877c7160bae4a21d2b1c8bddfe0" > < td class = "memItemLeft" align = "right" valign = "top" > static < a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a28308877c7160bae4a21d2b1c8bddfe0" > opj_tls_new< / a > (void)< / td > < / tr >
< tr class = "separator:a28308877c7160bae4a21d2b1c8bddfe0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8f4ee11fc0faa44d49f2c341cbf3dc79" > < td class = "memItemLeft" align = "right" valign = "top" > static void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a8f4ee11fc0faa44d49f2c341cbf3dc79" > opj_tls_destroy< / a > (< a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > *tls)< / td > < / tr >
< tr class = "separator:a8f4ee11fc0faa44d49f2c341cbf3dc79" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga90caa0ff9c1e54033ef1e3010faf03a9" > < td class = "memItemLeft" align = "right" valign = "top" > void *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga90caa0ff9c1e54033ef1e3010faf03a9" > opj_tls_get< / a > (< a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > *tls, int key)< / td > < / tr >
< tr class = "memdesc:ga90caa0ff9c1e54033ef1e3010faf03a9" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Get a thread local value corresponding to the provided key. < a href = "group___t_h_r_e_a_d.html#ga90caa0ff9c1e54033ef1e3010faf03a9" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga90caa0ff9c1e54033ef1e3010faf03a9" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gab1b97098aabc89f98eca8f8f7274f3e7" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gab1b97098aabc89f98eca8f8f7274f3e7" > opj_tls_set< / a > (< a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > *tls, int key, void *value, < a class = "el" href = "group___t_h_r_e_a_d.html#ga38f8cdfd288c8ff8963444403549ad6c" > opj_tls_free_func< / a > opj_free_func)< / td > < / tr >
< tr class = "memdesc:gab1b97098aabc89f98eca8f8f7274f3e7" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Set a thread local value corresponding to the provided key. < a href = "group___t_h_r_e_a_d.html#gab1b97098aabc89f98eca8f8f7274f3e7" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gab1b97098aabc89f98eca8f8f7274f3e7" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acdca1ecb372546840fdd9d5d5badce07" > < td class = "memItemLeft" align = "right" valign = "top" > static < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#acdca1ecb372546840fdd9d5d5badce07" > opj_thread_pool_setup< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp, int num_threads)< / td > < / tr >
< tr class = "separator:acdca1ecb372546840fdd9d5d5badce07" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a57e6dc05f2283639a2ec0b6884d9691c" > < td class = "memItemLeft" align = "right" valign = "top" > static < a class = "el" href = "structopj__worker__thread__job__t.html" > opj_worker_thread_job_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#a57e6dc05f2283639a2ec0b6884d9691c" > opj_thread_pool_get_next_job< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp, < a class = "el" href = "structopj__worker__thread__t.html" > opj_worker_thread_t< / a > *worker_thread, < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a > signal_job_finished)< / td > < / tr >
< tr class = "separator:a57e6dc05f2283639a2ec0b6884d9691c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga24a3a1b343df1168a3beb57babfa0916" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga24a3a1b343df1168a3beb57babfa0916" > opj_thread_pool_create< / a > (int num_threads)< / td > < / tr >
< tr class = "memdesc:ga24a3a1b343df1168a3beb57babfa0916" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Create a new thread pool. < a href = "group___t_h_r_e_a_d.html#ga24a3a1b343df1168a3beb57babfa0916" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga24a3a1b343df1168a3beb57babfa0916" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac0a73d8572dbdb91b3a9a10b053f23ec" > < td class = "memItemLeft" align = "right" valign = "top" > static void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "thread_8c.html#ac0a73d8572dbdb91b3a9a10b053f23ec" > opj_worker_thread_function< / a > (void *user_data)< / td > < / tr >
< tr class = "separator:ac0a73d8572dbdb91b3a9a10b053f23ec" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gaf389ecb3a583a30077fc546eef767c89" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gaf389ecb3a583a30077fc546eef767c89" > opj_thread_pool_submit_job< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp, < a class = "el" href = "group___t_h_r_e_a_d.html#gaf29983f3245378c30edbef61fe22913b" > opj_job_fn< / a > job_fn, void *user_data)< / td > < / tr >
< tr class = "memdesc:gaf389ecb3a583a30077fc546eef767c89" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Submit a new job to be run by one of the thread in the thread pool. < a href = "group___t_h_r_e_a_d.html#gaf389ecb3a583a30077fc546eef767c89" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gaf389ecb3a583a30077fc546eef767c89" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga0ced26c80598e49bf3a964bb802130f1" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga0ced26c80598e49bf3a964bb802130f1" > opj_thread_pool_wait_completion< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp, int max_remaining_jobs)< / td > < / tr >
< tr class = "memdesc:ga0ced26c80598e49bf3a964bb802130f1" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Wait that no more than max_remaining_jobs jobs are remaining in the queue of the thread pool. < a href = "group___t_h_r_e_a_d.html#ga0ced26c80598e49bf3a964bb802130f1" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga0ced26c80598e49bf3a964bb802130f1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ga4faef98a6b8495c63e9e5ce9cf0c3fc3" > < td class = "memItemLeft" align = "right" valign = "top" > int  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#ga4faef98a6b8495c63e9e5ce9cf0c3fc3" > opj_thread_pool_get_thread_count< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp)< / td > < / tr >
< tr class = "memdesc:ga4faef98a6b8495c63e9e5ce9cf0c3fc3" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Return the number of threads associated with the thread pool. < a href = "group___t_h_r_e_a_d.html#ga4faef98a6b8495c63e9e5ce9cf0c3fc3" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:ga4faef98a6b8495c63e9e5ce9cf0c3fc3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:gae44e8b9258d0baa19e3671a382faa33e" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "group___t_h_r_e_a_d.html#gae44e8b9258d0baa19e3671a382faa33e" > opj_thread_pool_destroy< / a > (< a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *tp)< / td > < / tr >
< tr class = "memdesc:gae44e8b9258d0baa19e3671a382faa33e" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Destroy a thread pool. < a href = "group___t_h_r_e_a_d.html#gae44e8b9258d0baa19e3671a382faa33e" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:gae44e8b9258d0baa19e3671a382faa33e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table >
< h2 class = "groupheader" > Typedef Documentation< / h2 >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a49bc29f76a9aaa7d5429ca2aa658d042" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > typedef struct < a class = "el" href = "structopj__job__list__t.html" > opj_job_list_t< / a > < a class = "el" href = "structopj__job__list__t.html" > opj_job_list_t< / a > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a7e5ebd302ebe1fec27a59e0a97f3775d" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > typedef struct < a class = "el" href = "structopj__worker__thread__list__t.html" > opj_worker_thread_list_t< / a > < a class = "el" href = "structopj__worker__thread__list__t.html" > opj_worker_thread_list_t< / a > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
< h2 class = "groupheader" > Enumeration Type Documentation< / h2 >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a72b07be38efb141bb1f0456227d233e5" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > enum < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5" > opj_worker_thread_state< / a > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< table class = "fieldtable" >
2020-12-28 22:12:25 +01:00
< tr > < th colspan = "2" > Enumerator< / th > < / tr > < tr > < td class = "fieldname" > < a class = "anchor" id = "a72b07be38efb141bb1f0456227d233e5a837ff250630d32ebcbdec8ab7545cd23" > < / a > OPJWTS_OK  < / td > < td class = "fielddoc" >
< / td > < / tr >
< tr > < td class = "fieldname" > < a class = "anchor" id = "a72b07be38efb141bb1f0456227d233e5a3e1ea93366aedb1abcd0498bf72db68a" > < / a > OPJWTS_STOP  < / td > < td class = "fielddoc" >
< / td > < / tr >
< tr > < td class = "fieldname" > < a class = "anchor" id = "a72b07be38efb141bb1f0456227d233e5a6ef08c3281ba796adc681df793f69dfd" > < / a > OPJWTS_ERROR  < / td > < td class = "fielddoc" >
< / td > < / tr >
2017-08-10 06:39:58 +02:00
< / table >
< / div >
< / div >
< h2 class = "groupheader" > Function Documentation< / h2 >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a93ce856805936340ca26e98bcf3f4996" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > int < a class = "el" href = "openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b" > OPJ_CALLCONV< / a > opj_get_num_cpus < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Return the number of virtual CPUs. < / p >
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "j2k_8c.html#ac8b636dfb2c65311872afe7de0ee121b" > opj_j2k_get_default_thread_count()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "aae69d6e8a731757a983888c4047d3e3b" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a > < a class = "el" href = "openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b" > OPJ_CALLCONV< / a > opj_has_thread_support < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Returns if the library is built with thread support. < / p >
< p > OPJ_TRUE if mutex, condition, thread, thread pool are available. < / p >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964" > OPJ_FALSE< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "j2k_8c.html#ac8b636dfb2c65311872afe7de0ee121b" > opj_j2k_get_default_thread_count()< / a > , and < a class = "el" href = "group___j2_k.html#gabecf91393e6703f8be5006b19df1be22" > opj_j2k_set_threads()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a57e6dc05f2283639a2ec0b6884d9691c" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > static < a class = "el" href = "structopj__worker__thread__job__t.html" > opj_worker_thread_job_t< / a > * opj_thread_pool_get_next_job < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *  < / td >
< td class = "paramname" > < em > tp< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "structopj__worker__thread__t.html" > opj_worker_thread_t< / a > *  < / td >
< td class = "paramname" > < em > worker_thread< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a >   < / td >
< td class = "paramname" > < em > signal_job_finished< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "structopj__worker__thread__t.html#a8e7cdff9dab59b5be9ed46436437f28a" > opj_worker_thread_t::cond< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a19d0f595937228552fe62c69cb2f6c44" > opj_thread_pool_t::cond< / a > , < a class = "el" href = "structopj__job__list__t.html#a84b556f2984f8f7a4b38cb0a075d3d1e" > opj_job_list_t::job< / a > , < a class = "el" href = "structopj__thread__pool__t.html#aff15e4a4599fc823762f8d3c28d8353d" > opj_thread_pool_t::job_queue< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a6cf93c9b46f4b51b9247a179f49fc796" > opj_worker_thread_t::marked_as_waiting< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a2ba43db98feae7de2aaed97d08ec55ce" > opj_worker_thread_t::mutex< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a818a719866334770dda95c675cb73d63" > opj_thread_pool_t::mutex< / a > , < a class = "el" href = "structopj__job__list__t.html#a27d174268d6050639a4032780172d87f" > opj_job_list_t::next< / a > , < a class = "el" href = "structopj__worker__thread__list__t.html#ac0a28fac91ec02c49898229a1122aa67" > opj_worker_thread_list_t::next< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga0f3687b35d6f3c395e1156a8499d1632" > opj_cond_signal()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga6edf64f08cd0b48299800852d52245d6" > opj_cond_wait()< / a > , < a class = "el" href = "openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964" > OPJ_FALSE< / a > , < a class = "el" href = "group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe" > opj_free()< / a > , < a class = "el" href = "group___m_i_s_c.html#ga49c70931cbed786f6eef5f095bcb2917" > opj_malloc()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gab38a90b92a1d294f7e1886e36a405518" > opj_mutex_lock()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gacf1f5a5f7f7257663505af02b717272c" > opj_mutex_unlock()< / a > , < a class = "el" href = "openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3" > OPJ_TRUE< / a > , < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a6ef08c3281ba796adc681df793f69dfd" > OPJWTS_ERROR< / a > , < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a3e1ea93366aedb1abcd0498bf72db68a" > OPJWTS_STOP< / a > , < a class = "el" href = "structopj__thread__pool__t.html#ad84a2e09419498cf81c8994f0441b131" > opj_thread_pool_t::pending_jobs_count< / a > , < a class = "el" href = "structopj__thread__pool__t.html#ae68571d1cf6eae577c75df49c2827438" > opj_thread_pool_t::signaling_threshold< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a3ee9c2691cf72fb90bf662490830b72b" > opj_thread_pool_t::state< / a > , < a class = "el" href = "structopj__thread__pool__t.html#abad6b35fb3cc6cd8aaaf523de9a4a187" > opj_thread_pool_t::waiting_worker_thread_count< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a50c4caa87ba2a6767d909898cc92b37a" > opj_thread_pool_t::waiting_worker_thread_list< / a > , < a class = "el" href = "structopj__worker__thread__list__t.html#af36b36ba7fc3ab5febe59faf30c86c7f" > opj_worker_thread_list_t::worker_thread< / a > , and < a class = "el" href = "structopj__thread__pool__t.html#a43fd14e3ba8409a0fac589a6dd4e7ee1" > opj_thread_pool_t::worker_threads_count< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "thread_8c.html#ac0a73d8572dbdb91b3a9a10b053f23ec" > opj_worker_thread_function()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "acdca1ecb372546840fdd9d5d5badce07" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > static < a class = "el" href = "openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4" > OPJ_BOOL< / a > opj_thread_pool_setup < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structopj__thread__pool__t.html" > opj_thread_pool_t< / a > *  < / td >
< td class = "paramname" > < em > tp< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" > < em > num_threads< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "structopj__worker__thread__t.html#a8e7cdff9dab59b5be9ed46436437f28a" > opj_worker_thread_t::cond< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a19d0f595937228552fe62c69cb2f6c44" > opj_thread_pool_t::cond< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a6cf93c9b46f4b51b9247a179f49fc796" > opj_worker_thread_t::marked_as_waiting< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a2ba43db98feae7de2aaed97d08ec55ce" > opj_worker_thread_t::mutex< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a818a719866334770dda95c675cb73d63" > opj_thread_pool_t::mutex< / a > , < a class = "el" href = "group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7" > opj_calloc()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga7f8a4c1ce6d9ad2dde1d293fad317522" > opj_cond_create()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gafba4c2356f6d070d43e5f0d5c71fdbee" > opj_cond_destroy()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga6edf64f08cd0b48299800852d52245d6" > opj_cond_wait()< / a > , < a class = "el" href = "openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964" > OPJ_FALSE< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gaa81ea27e801a8c0cf453b256ab38e067" > opj_mutex_create()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga66757c34c788b873ad9acfb60a5e008b" > opj_mutex_destroy()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gab38a90b92a1d294f7e1886e36a405518" > opj_mutex_lock()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#gacf1f5a5f7f7257663505af02b717272c" > opj_mutex_unlock()< / a > , < a class = "el" href = "group___t_h_r_e_a_d.html#ga541be683ba651c8244bde3f0d3650c92" > opj_thread_create()< / a > , < a class = "el" href = "openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3" > OPJ_TRUE< / a > , < a class = "el" href = "thread_8c.html#ac0a73d8572dbdb91b3a9a10b053f23ec" > opj_worker_thread_function()< / a > , < a class = "el" href = "thread_8c.html#a72b07be38efb141bb1f0456227d233e5a6ef08c3281ba796adc681df793f69dfd" > OPJWTS_ERROR< / a > , < a class = "el" href = "structopj__thread__pool__t.html#a3ee9c2691cf72fb90bf662490830b72b" > opj_thread_pool_t::state< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a7ef79b815efbb4ff8d49f3ed4f677073" > opj_worker_thread_t::thread< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a81267837ab1b9934e3a1cc64680959e7" > opj_worker_thread_t::tp< / a > , < a class = "el" href = "structopj__thread__pool__t.html#abad6b35fb3cc6cd8aaaf523de9a4a187" > opj_thread_pool_t::waiting_worker_thread_count< / a > , < a class = "el" href = "structopj__thread__pool__t.html#adb012d263904a4f62812ed7d30b0a47e" > opj_thread_pool_t::worker_threads< / a > , and < a class = "el" href = "structopj__thread__pool__t.html#a43fd14e3ba8409a0fac589a6dd4e7ee1" > opj_thread_pool_t::worker_threads_count< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "group___t_h_r_e_a_d.html#ga24a3a1b343df1168a3beb57babfa0916" > opj_thread_pool_create()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a8f4ee11fc0faa44d49f2c341cbf3dc79" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > static void opj_tls_destroy < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > *  < / td >
< td class = "paramname" > < em > tls< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "structopj__tls__t.html#adfd2bdbeb80b7f067288709b3c3fc1aa" > opj_tls_t::key_val< / a > , < a class = "el" href = "structopj__tls__t.html#ae2c441fd26b7ae11a86163d5bebb4d2e" > opj_tls_t::key_val_count< / a > , < a class = "el" href = "group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe" > opj_free()< / a > , < a class = "el" href = "structopj__tls__key__val__t.html#a3a1ff12d54b55c7d3e30f31b10ad261e" > opj_tls_key_val_t::opj_free_func< / a > , and < a class = "el" href = "structopj__tls__key__val__t.html#a58ca4c6fe1d0342a77b89bb240a6f549" > opj_tls_key_val_t::value< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "group___t_h_r_e_a_d.html#gae44e8b9258d0baa19e3671a382faa33e" > opj_thread_pool_destroy()< / a > , and < a class = "el" href = "thread_8c.html#ac0a73d8572dbdb91b3a9a10b053f23ec" > opj_worker_thread_function()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "a28308877c7160bae4a21d2b1c8bddfe0" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > static < a class = "el" href = "structopj__tls__t.html" > opj_tls_t< / a > * opj_tls_new < / td >
< td > (< / td >
< td class = "paramtype" > void  < / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7" > opj_calloc()< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "group___t_h_r_e_a_d.html#ga24a3a1b343df1168a3beb57babfa0916" > opj_thread_pool_create()< / a > , and < a class = "el" href = "thread_8c.html#ac0a73d8572dbdb91b3a9a10b053f23ec" > opj_worker_thread_function()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
2020-12-28 22:12:25 +01:00
< a class = "anchor" id = "ac0a73d8572dbdb91b3a9a10b053f23ec" > < / a >
2017-08-10 06:39:58 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > static void opj_worker_thread_function < / td >
< td > (< / td >
< td class = "paramtype" > void *  < / td >
< td class = "paramname" > < em > user_data< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > static< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-12-28 22:12:25 +01:00
< p > References < a class = "el" href = "structopj__worker__thread__job__t.html#ab9dc542136b4596b711e3be011abdd4d" > opj_worker_thread_job_t::job_fn< / a > , < a class = "el" href = "openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964" > OPJ_FALSE< / a > , < a class = "el" href = "group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe" > opj_free()< / a > , < a class = "el" href = "thread_8c.html#a57e6dc05f2283639a2ec0b6884d9691c" > opj_thread_pool_get_next_job()< / a > , < a class = "el" href = "thread_8c.html#a8f4ee11fc0faa44d49f2c341cbf3dc79" > opj_tls_destroy()< / a > , < a class = "el" href = "thread_8c.html#a28308877c7160bae4a21d2b1c8bddfe0" > opj_tls_new()< / a > , < a class = "el" href = "openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3" > OPJ_TRUE< / a > , < a class = "el" href = "structopj__worker__thread__t.html#a81267837ab1b9934e3a1cc64680959e7" > opj_worker_thread_t::tp< / a > , and < a class = "el" href = "structopj__worker__thread__job__t.html#a89f225764ee25dabc5e374ed277cd286" > opj_worker_thread_job_t::user_data< / a > .< / p >
2017-08-10 06:39:58 +02:00
2020-12-28 22:12:25 +01:00
< p > Referenced by < a class = "el" href = "thread_8c.html#acdca1ecb372546840fdd9d5d5badce07" > opj_thread_pool_setup()< / a > .< / p >
2017-08-10 06:39:58 +02:00
< / div >
< / div >
< / div > <!-- contents -->
<!-- start footer part -->
< hr class = "footer" / > < address class = "footer" > < small >
Generated by   < a href = "http://www.doxygen.org/index.html" >
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
2020-12-28 22:12:25 +01:00
< / a > 1.8.11
2017-08-10 06:39:58 +02:00
< / small > < / address >
< / body >
< / html >