- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/concurrency/alarm.cfa
r6b33e89 r1756e08 10 10 // Created On : Fri Jun 2 11:31:25 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Apr 24 22:22:25 202513 // Update Count : 8812 // Last Modified On : Wed Jun 17 16:11:35 2020 13 // Update Count : 75 14 14 // 15 15 … … 84 84 85 85 void insert( alarm_list_t * this, alarm_node_t * n ) { 86 alarm_node_t & it = iter( *this ); 87 while ( advance( it ) && it.deadline <= n->deadline ); 88 insert_before( it, *n ); 86 alarm_node_t * it = & (*this)`first; 87 while( it && (n->deadline > it->deadline) ) { 88 it = & (*it)`next; 89 } 90 if ( it ) { 91 insert_before( *it, *n ); 92 } else { 93 insert_last(*this, *n); 94 } 95 89 96 verify( validate( *this ) ); 90 97 } … … 92 99 alarm_node_t * pop( alarm_list_t * this ) { 93 100 verify( validate( *this ) ); 94 alarm_node_t * head = & first( *this );101 alarm_node_t * head = & (*this)`first; 95 102 if( head ) { 96 103 remove(*head); … … 140 147 park(); 141 148 142 /* paranoid */ verify( ! 143 /* paranoid */ verify( & n ext( node )== 0p );144 /* paranoid */ verify( & prev( node )== 0p );149 /* paranoid */ verify( !node.set ); 150 /* paranoid */ verify( & node`next == 0p ); 151 /* paranoid */ verify( & node`prev == 0p ); 145 152 } 146 153
Note:
See TracChangeset
for help on using the changeset viewer.