Ignore:
Timestamp:
Feb 6, 2020, 10:23:27 AM (4 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
Children:
3381ed7
Parents:
4f7b418
Message:

First attempt at park/unpark

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/concurrency/mutex.cfa

    r4f7b418 r9f575ea  
    6363        this.is_locked = (this.blocked_threads != 0);
    6464        WakeThread(
    65                 pop_head( this.blocked_threads )
     65                pop_head( this.blocked_threads ), false
    6666        );
    6767        unlock( this.lock );
     
    121121                owner = thrd;
    122122                recursion_count = (thrd ? 1 : 0);
    123                 WakeThread( thrd );
     123                WakeThread( thrd, false );
    124124        }
    125125        unlock( lock );
     
    139139        lock( lock __cfaabi_dbg_ctx2 );
    140140        WakeThread(
    141                 pop_head( this.blocked_threads )
     141                pop_head( this.blocked_threads ), false
    142142        );
    143143        unlock( lock );
     
    148148        while(this.blocked_threads) {
    149149                WakeThread(
    150                         pop_head( this.blocked_threads )
     150                        pop_head( this.blocked_threads ), false
    151151                );
    152152        }
Note: See TracChangeset for help on using the changeset viewer.