这篇教程C++ startThread函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中startThread函数的典型用法代码示例。如果您正苦于以下问题:C++ startThread函数的具体用法?C++ startThread怎么用?C++ startThread使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了startThread函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: j_config_load_file_newvoid SpeechSystem::setup(){ // ewwww jconf = j_config_load_file_new(const_cast<char*>(jconf_filename.c_str())); /* 2. create recognition instance according to the jconf */ /* it loads models, setup final parameters, build lexicon and set up work area for recognition */ recog = j_create_instance_from_jconf(jconf); if (recog == NULL) { fprintf(stderr, "Error in startup/n"); return; } /*********************/ /* Register callback */ /*********************/ /* register result callback functions */ callback_add(recog, CALLBACK_EVENT_SPEECH_READY, recready, this); callback_add(recog, CALLBACK_EVENT_SPEECH_START, recstart, this); callback_add(recog, CALLBACK_RESULT, recdone, this); /**************************/ /* Initialize audio input */ /**************************/ /* initialize audio input device */ /* ad-in thread starts at this time for microphone */ if (j_adin_init(recog) == FALSE) { /* error */ return; }//#ifdef JULIUS_DEBUG /* output system information to log */ j_recog_info(recog);//#endif /***********************************/ /* Open input stream and recognize */ /***********************************/ /* raw speech input (microphone etc.) */ switch(j_open_stream(recog, NULL)) { case 0: /* succeeded */ break; case -1: /* error */ fprintf(stderr, "error in input stream/n"); return; case -2: /* end of recognition process */ fprintf(stderr, "failed to begin input stream/n"); return; } startThread(true, false); // blocking, verbose}
开发者ID:paulreimer,项目名称:DataFlower,代码行数:55,
示例2: runvoid EntityScriptServer::run() { // make sure we request our script once the agent connects to the domain auto nodeList = DependencyManager::get<NodeList>(); ThreadedAssignment::commonInit(ENTITY_SCRIPT_SERVER_LOGGING_NAME, NodeType::EntityScriptServer); // Setup MessagesClient auto messagesClient = DependencyManager::set<MessagesClient>(); messagesClient->startThread(); DomainHandler& domainHandler = DependencyManager::get<NodeList>()->getDomainHandler(); connect(&domainHandler, &DomainHandler::settingsReceived, this, &EntityScriptServer::handleSettings); // make sure we hear about connected nodes so we can grab an ATP script if a request is pending connect(nodeList.data(), &LimitedNodeList::nodeActivated, this, &EntityScriptServer::nodeActivated); connect(nodeList.data(), &LimitedNodeList::nodeKilled, this, &EntityScriptServer::nodeKilled); nodeList->addSetOfNodeTypesToNodeInterestSet({ NodeType::Agent, NodeType::AudioMixer, NodeType::AvatarMixer, NodeType::EntityServer, NodeType::MessagesMixer, NodeType::AssetServer }); // Setup Script Engine resetEntitiesScriptEngine(); auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>(); entityScriptingInterface->init(); _entityViewer.init(); // setup the JSON filter that asks for entities with a non-default serverScripts property QJsonObject queryJSONParameters; queryJSONParameters[EntityJSONQueryProperties::SERVER_SCRIPTS_PROPERTY] = EntityQueryFilterSymbol::NonDefault; QJsonObject queryFlags; queryFlags[EntityJSONQueryProperties::INCLUDE_ANCESTORS_PROPERTY] = true; queryFlags[EntityJSONQueryProperties::INCLUDE_DESCENDANTS_PROPERTY] = true; queryJSONParameters[EntityJSONQueryProperties::FLAGS_PROPERTY] = queryFlags; // setup the JSON parameters so that OctreeQuery does not use a frustum and uses our JSON filter _entityViewer.getOctreeQuery().setUsesFrustum(false); _entityViewer.getOctreeQuery().setJSONParameters(queryJSONParameters); entityScriptingInterface->setEntityTree(_entityViewer.getTree()); DependencyManager::set<AssignmentParentFinder>(_entityViewer.getTree()); auto tree = _entityViewer.getTree().get(); connect(tree, &EntityTree::deletingEntity, this, &EntityScriptServer::deletingEntity, Qt::QueuedConnection); connect(tree, &EntityTree::addingEntity, this, &EntityScriptServer::addingEntity, Qt::QueuedConnection); connect(tree, &EntityTree::entityServerScriptChanging, this, &EntityScriptServer::entityServerScriptChanging, Qt::QueuedConnection);}
开发者ID:ZappoMan,项目名称:hifi,代码行数:55,
示例3: mainint main(int arg, char** argv) { sbinder_start(); int ret; ret = cb_add(_cb_callback); printf("main 1ret = %d/n",ret); ret = cb_add(_cb_callback1); printf("main 2ret = %d/n",ret); ret = cb_invoke(10); printf("main 3ret = %d/n",ret); sleep(5); ret = cb_invoke(11); printf("main 4ret = %d/n",ret); sleep(5); ret = cb_remove(_cb_callback1); printf("main 5ret = %d/n",ret); startThread(13); printf("main 6ret = %d/n",ret); startThread(14); printf("main 7ret = %d/n",ret); startThread(15); printf("main 8ret = %d/n",ret); startThread(16); printf("main 9ret = %d/n",ret); startThread(17); printf("main 10ret = %d/n",ret); ret = cb_invoke(12); printf("main 11ret = %d/n",ret); return sbinder_serv();}
开发者ID:wzb0313,项目名称:android-binder-standalone,代码行数:42,
|