这篇教程C++ suspend函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中suspend函数的典型用法代码示例。如果您正苦于以下问题:C++ suspend函数的具体用法?C++ suspend怎么用?C++ suspend使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了suspend函数的26个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: syserr void syserr(const char * msg) { if(current_game == error_game) return; std::cerr << msg << std::endl; suspend(); message(msg, love::TAG_ERROR); }
开发者ID:icedman,项目名称:lov8,代码行数:9,
示例2: suspendvoid osd_state::switch_to_internal_video_mode(){ if ( m_current_state != suspended){ suspend(); } m_current_state = internal_video; detail::video_setup();}
开发者ID:kwikius,项目名称:quantracker,代码行数:9,
示例3: suspend// release releases the interface to the font object //void APIText::release() { suspend(); if (d3dfont) { d3dfont->Release(); d3dfont = nullptr; }}
开发者ID:d10p,项目名称:gundam-style,代码行数:11,
示例4: mainint main ( int argc, char **argv ){ int mode = 0; int ac_resusp = 0; int fix_rtc = 0; int opt; while (( opt = getopt ( argc, argv, "a:frs" )) != EOF ) { switch ( opt ) { case 's': mode = 's'; break; case 'r': mode = 'r'; break; case 'a': ac_resusp = atoi ( optarg ); if ( ac_resusp < 30 ) { ac_resusp = 120; fprintf ( stderr, "Warning: resuspend timeout must be >= 30 sec. -- now set to 120 sec/n" ); } break; case 'f': fix_rtc = 1; break; default: usage ( ); } } if ( geteuid ( ) != 0 ) { fprintf ( stderr, "You need root priviledges to run opiealarm." ); return 2; } if ( !mode ) usage ( ); parent_pid = getpid ( ); // kill running opiealarm opiealarm_was_running = kill_with_pidfile ( ); remove_pidfile ( ); switch ( mode ) { case 'r': opt = resume ( ac_resusp ); break; case 's': default : opt = suspend ( fix_rtc ); break; } parent_pid = 0; return opt;}
开发者ID:opieproject,项目名称:opie,代码行数:57,
示例5: get_thread_idbool mutex::lock(const bool wait) { const THREAD_ID lock_id = get_thread_id(); while(atomic_if_then_assign(&_mutex_owner, lock_id, 0) != 0) { if (wait) suspend(0); else return false; } return true;}
开发者ID:joshmg,项目名称:latch,代码行数:9,
示例6: suspendvoid TVDemo::shell(){ suspend(); system("cls"); cout << "Type EXIT to return..."; system( getenv( "COMSPEC")); resume(); redraw();}
开发者ID:WiLLStenico,项目名称:TestesEOutrasBrincadeiras,代码行数:9,
示例7: syswarn void syswarn(const char * msg) { if(current_game == error_game) return; std::cerr << msg << std::endl; suspend(); message(msg, love::TAG_WARNING); }
开发者ID:icedman,项目名称:lov8,代码行数:9,
示例8: debugvoid C64::setNTSC(){ debug(2, "C64::setNTSC/n"); suspend(); vic.setChipModel(MOS6567_NTSC); sid.setNTSC(); resume();}
开发者ID:DNSGeek,项目名称:virtualc64,代码行数:10,
示例9: cleanup_and_exit/* * ************************************************************* * Clean up and terminate with exitcode given as argument * **************************************************************/void cleanup_and_exit( srv_opts_t *options ){ // cleanup e.g. free allocated pointers if( options != NULL ) { } // and suspend process suspend( options );}
开发者ID:dreamshader,项目名称:Robot,代码行数:15,
示例10: suspendvoidKcsPower::releaseButton(unsigned nr){ if (nr == 1) { suspend(); c64->cpu.releaseNmiLine(CPU::INTSRC_EXPANSION); resume(); }};
开发者ID:dirkwhoffmann,项目名称:virtualc64,代码行数:10,
示例11: suspendvoid Search::exit() { exitsearch = true; suspend(); resume(); if (worker.joinable()) { worker.join(); } timer.stop(); stageTimer.stop();}
开发者ID:Hava842,项目名称:martonchess,代码行数:10,
示例12: suspendvoid ScriptTcl::runController(int task) { scriptBarrier.publish(barrierStep++,task); suspend();#ifdef NAMD_TCL if ( task == SCRIPT_RUN || task == SCRIPT_CONTINUE || task == SCRIPT_MINIMIZE ) { doCallback(state->callback_labelstring.c_str(), state->callback_valuestring.c_str()); }#endif}
开发者ID:sunhwan,项目名称:NAMD-mini,代码行数:10,
示例13: suspendvoidC64::setPAL(){ suspend(); vic->setChipModel(MOS6569_PAL); sid->setPAL(); debug(2, "Switching VIC chip model to MOS6569 (PAL)/n"); resume();}
开发者ID:jedivind,项目名称:VirtualC64-Core,代码行数:11,
示例14: __pthread_rwlock_timedwrlockint__pthread_rwlock_timedwrlock (pthread_rwlock_t *rwlock, const struct timespec *abstime){ pthread_descr self; pthread_extricate_if extr; if (abstime->tv_nsec < 0 || abstime->tv_nsec >= 1000000000) return EINVAL; self = thread_self (); /* Set up extrication interface */ extr.pu_object = rwlock; extr.pu_extricate_func = rwlock_wr_extricate_func; /* Register extrication interface */ __pthread_set_own_extricate_if (self, &extr); while(1) { __pthread_lock (&rwlock->__rw_lock, self); if (rwlock->__rw_readers == 0 && rwlock->__rw_writer == NULL) { rwlock->__rw_writer = self; __pthread_set_own_extricate_if (self, 0); __pthread_unlock (&rwlock->__rw_lock); return 0; } /* Suspend ourselves, then try again */ enqueue (&rwlock->__rw_write_waiting, self); __pthread_unlock (&rwlock->__rw_lock); /* This is not a cancellation point */ if (timedsuspend (self, abstime) == 0) { int was_on_queue; __pthread_lock (&rwlock->__rw_lock, self); was_on_queue = remove_from_queue (&rwlock->__rw_write_waiting, self); __pthread_unlock (&rwlock->__rw_lock); if (was_on_queue) { __pthread_set_own_extricate_if (self, 0); return ETIMEDOUT; } /* Eat the outstanding restart() from the signaller */ suspend (self); } }}
开发者ID:LazyZhu,项目名称:rt-n56u-1,代码行数:54,
示例15: resumevoid device_execute_interface::interface_pre_reset(){ // reset the total number of cycles m_totalcycles = 0; // enable all devices (except for disabled devices) if (!disabled()) resume(SUSPEND_ANY_REASON); else suspend(SUSPEND_REASON_DISABLE, true);}
开发者ID:crazii,项目名称:mameplus,代码行数:11,
示例16: genunimpvoidgenunimp (){ console_reset();#ifdef PCHIST ppc();#endif /* PCHIST */ suspend(); console_init(); return;}
开发者ID:brouhaha,项目名称:kx10,代码行数:12,
示例17: yarn_suspend_on_timevoid yarn_suspend_on_time ( unsigned long usecs ){ yarn_t currentYarn; unsigned long i; TTDGET(); currentYarn = TTD.yarn_current->pid; wait_graph_lock(wg); wait_graph_insert(wg, currentYarn); wait_graph_insert_time(wg, currentYarn, yarns_time() + usecs); wait_graph_unlock(wg); suspend();}
开发者ID:prophile,项目名称:yarns,代码行数:12,
示例18: suspend_for void suspend_for(const boost::posix_time::time_duration& timeout, Callback&& cancel) { timer_.expires_from_now(timeout); timer_.async_wait( [&](const boost::system::error_code&) { resume(); }); suspend(); timer_.cancel(); cancel(); suspend(); if (interrupted_) BOOST_THROW_EXCEPTION(interrupted_exception()); }
开发者ID:planaria,项目名称:kumori,代码行数:21,
示例19: sink_process_msgstatic int sink_process_msg(pa_msgobject *o, int code, void *data, int64_t offset, pa_memchunk *chunk) { struct userdata *u = PA_SINK(o)->userdata; switch (code) { case PA_SINK_MESSAGE_GET_LATENCY: *((pa_usec_t*) data) = sink_get_latency(u, &PA_SINK(o)->sample_spec); return 0; case PA_SINK_MESSAGE_SET_STATE: switch ((pa_sink_state_t) PA_PTR_TO_UINT(data)) { case PA_SINK_SUSPENDED: pa_assert(PA_SINK_IS_OPENED(u->sink->thread_info.state)); pa_smoother_pause(u->smoother, pa_rtclock_now()); if (!u->source || u->source_suspended) { if (suspend(u) < 0) return -1; } u->sink_suspended = true; break; case PA_SINK_IDLE: case PA_SINK_RUNNING: if (u->sink->thread_info.state == PA_SINK_SUSPENDED) { pa_smoother_resume(u->smoother, pa_rtclock_now(), true); if (!u->source || u->source_suspended) { if (unsuspend(u) < 0) return -1; u->sink->get_volume(u->sink); u->sink->get_mute(u->sink); } u->sink_suspended = false; } break; case PA_SINK_INVALID_STATE: case PA_SINK_UNLINKED: case PA_SINK_INIT: ; } break; } return pa_sink_process_msg(o, code, data, offset, chunk);}
开发者ID:Elemecca,项目名称:pulseaudio,代码行数:53,
示例20: task_purgerstatic void task_purger(rtems_task_argument arg){ while (true) { suspend(RTEMS_SELF); set_task_prio(RTEMS_SELF, PRIORITY_HIGH); purge('P'); } rtems_task_delete(RTEMS_SELF);}
开发者ID:FullMentalPanic,项目名称:RTEMS_NEW_TOOL_CHAIN,代码行数:12,
示例21: fvoid f(){ int i=0,flag=0; while(1){ printf("tid :%d in f: %d/n",getID(),i++); if(i>0 && !flag) { suspend(tid); flag = 1; } usleep(90000); }}
开发者ID:abhiagar90,项目名称:dejavu,代码行数:12,
示例22: kbd_readstatic int kbd_read( void* pNode, void* pCookie, off_t nPos, void* pBuf, size_t nLen ){ KbdVolume_s* psVolume = &g_sVolume; int nError; if ( 0 == nLen ) { return( 0 ); } for ( ;; ) { if ( atomic_read( &psVolume->nBytesReceived ) > 0 ) { int nSize = min( nLen, atomic_read( &psVolume->nBytesReceived ) ); int i; char* pzBuf = pBuf; for ( i = 0 ; i < nSize ; ++i ) { pzBuf[ i ] = psVolume->zBuffer[ atomic_inc_and_read( &psVolume->nOutPos ) & 0xff ]; } atomic_sub( &g_sVolume.nBytesReceived, nSize ); nError = nSize; } else { int nEFlg = cli(); if ( -1 != psVolume->hWaitThread ) { nError = -EBUSY; printk( "ERROR : two threads attempted to read from keyboard device!/n" ); } else { if ( 1 ) { nError = -EWOULDBLOCK; } else { psVolume->hWaitThread = get_thread_id(NULL); nError = suspend(); psVolume->hWaitThread = -1; } } put_cpu_flags( nEFlg ); } if ( 0 != nError ) { break; } } return( nError );}
开发者ID:PyroOS,项目名称:Pyro,代码行数:53,
示例23: updateEnvironmentvoid Game::update(float interval){ updateEnvironment(interval); switch (mGameState) { case STATE_MENU: break; case STATE_WAITING: updateBall(sgoBall, interval); if ((sgoBall.pos() - sgLookat).len() < 1.0f) { mCounter = 0.0f; mGameState = STATE_COUNTDOWN; } break; case STATE_COUNTDOWN: mCounter += interval; if (mCounter > COUNTDOWN_TIME) { enableBall(); mGameState = STATE_RUNNING; } case STATE_RUNNING: if (wasKeyPressed(KEY_ESC)) { Main::pushState(gScreenMain2); } /* manually switch features */ if (wasFunctionPressed(1)) { setBallShadow(!useBallShadow()); } if (wasFunctionPressed(2)) { setReflection(!useReflection()); } if (wasFunctionPressed(5)) { suspend(); toggleMouseControl(); resume(); } updateBall(sgoBall, interval); break; } updateGameField(sgoBall);}
开发者ID:FLUXparticle,项目名称:CGmadness,代码行数:52,
示例24: test_scheduler_move_heirstatic void test_scheduler_move_heir(void){ bool per_cpu_state_ok; _Thread_Disable_dispatch(); suspend(2); suspend(3); suspend(0); resume(2); suspend(1); resume(3); resume(0); per_cpu_state_ok = is_per_cpu_state_ok(); resume(1); _Thread_Enable_dispatch(); rtems_test_assert(per_cpu_state_ok);}
开发者ID:chch1028,项目名称:rtems,代码行数:22,
示例25: suspendbool Thread::shutdown(){ // The thread will cleanly exit when it is done running=false; suspend(); // Now wait for the thread to shutdown WaitForSingleObject(thread,INFINITE); // It's destroyed, let's set our handle back to null thread=NULL; return true;}
开发者ID:CarlosX,项目名称:DarkEmu,代码行数:13,
示例26: AudioEffectXVst2413r::Vst2413r(audioMasterCallback audioMaster): AudioEffectX(audioMaster, 0, 0), driver_(44100){ if(audioMaster != NULL) { setNumInputs(0); setNumOutputs(1); setUniqueID(kUniqueId); canProcessReplacing(); isSynth(); } suspend();}
开发者ID:WilliamChao,项目名称:vst2413,代码行数:13,
注:本文中的suspend函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ suspendIfNeeded函数代码示例 C++ suser函数代码示例 |