本文整理汇总了C++中Cue::execute方法的典型用法代码示例。如果您正苦于以下问题:C++ Cue::execute方法的具体用法?C++ Cue::execute怎么用?C++ Cue::execute使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cue
的用法示例。
在下文中一共展示了Cue::execute方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
void *CueIntegrationR::compute4(void* ptr) {
CueIntegrationR *obj = reinterpret_cast<CueIntegrationR*>(ptr);
unsigned int counter = 3;
bool* endthreads = &(obj->m_endthreads);
Cue** cues = obj->mdp_Cues;
Cue* cue = cues[counter];
pthread_barrier_t* barrier = &(obj->m_barrier);
pthread_cond_t* threadsstart = &(obj->m_condition_threadsstart);
pthread_cond_t* threadended = &(obj->m_condition_threadsended);
// pthread_mutex_t* mutex_waitlock = &((obj->mp_mutex_waitlock)[counter]);
pthread_mutex_t* mutex_waitlock = &((obj->m_mutex_waitlock1));
while(!(*endthreads)) {
//pthread_mutex_lock( &((obj->m_mutex_waitlock1)) );
pthread_mutex_lock( mutex_waitlock );
//if(obj->debug) std::cout << obj->getName() << "::compute2()::pause\n";
//pthread_cond_wait( &(obj->m_condition_threadsstart), &((obj->m_mutex_waitlock1)) );
//pthread_cond_wait( &(obj->m_condition_threadsstart), mutex_waitlock );
pthread_cond_wait( threadsstart, mutex_waitlock );
//if(obj->debug) std::cout << obj->getName() << "::compute2()::resume\n";
//Cue* cue = (obj->mdp_Cues)[counter];
//pthread_mutex_unlock( &((obj->m_mutex_waitlock1)) );
pthread_mutex_unlock( mutex_waitlock );
//if(obj->debug) std::cout << obj->getName() << "::compute2()::executing " << cue->getName() << "\n";
cue->execute();
int wait = pthread_barrier_wait( barrier );
//int wait = pthread_barrier_wait( &(obj->m_barrier) );
if(wait == -1) {
pthread_cond_signal( threadended );
//pthread_cond_signal( &(obj->m_condition_threadsended) );
}
}
return NULL;
}