zebra关于线程管理的相关函数的简要功能介绍

来源:互联网 发布:淘宝开店哪里进货 编辑:程序博客网 时间:2024/06/06 07:50

下面给出了zebra关于线程管理的相关函数的简要功能介绍。

1.1.1 thread_master_create ()

为创建一个新的thread_master结构体动态开辟一块内存空间。

1.1.2 thread_list_add ()

list双向链表尾部插入一个新的thread

1.1.3 thread_list_add_before ()

在函数参数point所指向的thread前面插入一个新的thread

1.1.4 thread_list_delete ()

删除参数中指定的thread

1.1.5 thread_add_unuse ()

向指定thead_master中的unused链表尾部插入新thread

1.1.6 thread_list_free ()

从内存中释放掉指定thread_master中的指定thread链表所占空间。

1.1.7 thread_master_free ()

彻底释放指定thread_master所占内存空间。

1.1.8 thread_trim_head ()

若指定thread链表中非空,删除该链表头指针所指thread,并将其返回,即从线程队列中取出一个线程。

1.1.9 thread_empty ()

判断指定thread链表是否为空。

1.1.10 thread_timer_remain_second ()

得到指定线程的剩余时间。

1.1.11 thread_get ()

若指定thread_master中的unuse链表非空,从该队列中取出一个thread,根据参数初始化并返回之。否则,给该thread_master多开辟一块空间给新的thread,根据参数初始化该thread并返回之。

1.1.12 thread_add_read ()

根据所给参数在指定thread_master中添加并初始化一个read类型的thread并返回之。

1.1.13 thread_add_write ()

根据所给参数在指定thread_master中添加并初始化一个write类型的thread并返回之。

1.1.14 thread_add_timer ()

根据所给参数在指定thread_master中添加并初始化一个timer类型的thread。若timer链表不要求排序,则直接返回新thread,若要求排序,则将新thread插入到队列的相应位置后再返回之。

1.1.15 thread_add_event ()

根据所给参数在指定thread_master中添加并初始化一个event类型的thread并返回之。

1.1.16 thread_cancel ()

删除指定thread,删除后将其类型置为THREAD_UNUSED,并将其插入到该thread_masterunuse链表中。

1.1.17 thread_cancel_event ()

将指定thread_masterevent链表中与参数中arg相匹配的thread删除。

1.1.18 thread_timer_wait ()

找出指定thread_mastertimer链表中最小的剩余时间并将其返回。

1.1.19 thread_run ()

将指定thread的值赋给thread类型的fetch,然后将其类型置为THREAD_UNUSED,并将其插入unuse链表,返回fetch

1.1.20 thread_process_fd ()

将指定thread链表中的元素取出插入到该thread_masterready链表中,返回该链表中插入元素的个数。

1.1.21 thread_fetch ()

若指定thread_masterevent队列非空取出其头元素并用run函数处理。取出并用run函数处理timer队列中每一个之前创建的线程。若指定thread_masterready队列非空取出其头元素并用run函数处理。拷贝该thread_master的文件描述符。将readwrite链表插到ready链表中,再从ready链表取头元素用run函数处理。如此无限循环下去直到所有进程都处理完。

1.1.22 thread_consumed_time ()

得到该进程所耗费的时间。

1.1.23 thread_call ()

执行该thread中的功能函数,如果该thread持续时间超过CPU规定的独占时间,发出警告。

1.1.24 thread_execute ()

根据参数创建一个event类型的thread并用thread_call()函数对其进行处理。

 

0 0