static DaoTaskEvent* DaoCallServer_MakeEvent() { DaoTaskEvent *event; DaoCallServer *server = daoCallServer; DMutex_Lock( & server->mutex ); event = (DaoTaskEvent*) DList_PopBack( server->caches ); if( event == NULL ) event = DaoTaskEvent_New(); DMutex_Unlock( & server->mutex ); return event; }
static DaoTaskEvent* DaoCallServer_MakeEvent() { DaoTaskEvent *event; DaoCallServer *server; if( daoCallServer == NULL ) DaoCallServer_Init( mainVmSpace ); server = daoCallServer; DMutex_Lock( & server->mutex ); event = (DaoTaskEvent*) DArray_PopBack( server->caches ); if( event == NULL ) event = DaoTaskEvent_New(); DMutex_Unlock( & server->mutex ); return event; }