データ構造 | |
struct | queue |
型定義 | |
typedef struct queue | QUEUE |
関数 | |
Inline void | queue_initialize (QUEUE *p_queue) |
Inline void | queue_insert_prev (QUEUE *p_queue, QUEUE *p_entry) |
Inline void | queue_delete (QUEUE *p_entry) |
Inline QUEUE * | queue_delete_next (QUEUE *p_queue) |
Inline bool_t | queue_empty (QUEUE *p_queue) |
Inline void queue_delete | ( | QUEUE * | p_entry | ) |
参照先 queue::p_next, と queue::p_prev.
参照元 change_priority(), iset_flg(), make_non_runnable(), set_flg(), wait_dequeue_wobj(), と wobj_change_priority().
00101 { 00102 p_entry->p_prev->p_next = p_entry->p_next; 00103 p_entry->p_next->p_prev = p_entry->p_prev; 00104 }
参照先 assert, queue::p_next, と queue::p_prev.
参照元 force_send_data(), init_wait_queue(), isig_sem(), receive_data(), receive_pridata(), rel_mpf(), rotate_ready_queue(), send_data(), send_pridata(), sig_sem(), と snd_mbx().
00116 { 00117 QUEUE *p_entry; 00118 00119 assert(p_queue->p_next != p_queue); 00120 p_entry = p_queue->p_next; 00121 p_queue->p_next = p_entry->p_next; 00122 p_entry->p_next->p_prev = p_queue; 00123 return(p_entry); 00124 }
参照先 assert, queue::p_next, と queue::p_prev.
参照元 change_priority(), force_send_data(), init_wait_queue(), isig_sem(), make_non_runnable(), pol_flg(), receive_data(), receive_pridata(), rel_mpf(), rotate_ready_queue(), send_data(), send_pridata(), sig_sem(), snd_mbx(), twai_flg(), wai_flg(), と wait_tskid().
00133 { 00134 if (p_queue->p_next == p_queue) { 00135 assert(p_queue->p_prev == p_queue); 00136 return(true); 00137 } 00138 return(false); 00139 }
Inline void queue_initialize | ( | QUEUE * | p_queue | ) |
参照先 queue::p_next, と queue::p_prev.
参照元 change_priority(), make_runnable(), queue_insert_tpri(), rcv_dtq(), rcv_pdq(), rotate_ready_queue(), trcv_dtq(), trcv_pdq(), と wobj_queue_insert().
00087 { 00088 p_entry->p_prev = p_queue->p_prev; 00089 p_entry->p_next = p_queue; 00090 p_queue->p_prev->p_next = p_entry; 00091 p_queue->p_prev = p_entry; 00092 }
Copyright © 2008 by Kijineko Inc.