草庐IT

print_sleep

全部标签

c++ - Bison/柔性 : print erroneous line

我正在使用bison+flex来解析文件。出错时调用yyerror()。如何获取违反规则的行号或字符串,并打印错误信息? 最佳答案 行号很简单:yylineno是行号。在.l文件的顶部指定%optionyylineno。好吧,几乎很容易。Lookahead有时会使行号减一。与其说“Erroroccurredatline#xxx”,不如说错误发生在#xxx行附近。至于剩下的,就看你的了。您将不得不捕获不太有效的语法并调用适当的警告或错误处理程序。有关详细信息,请参见O'Reilly的“flex&bison”一书;它有一整章是关于错误信

c++ - 我可以用什么来替换我的 Qt 应用程序中的 sleep 和 usleep?

我正在将一部分现有代码导入我的Qt应用程序,并注意到其中有一个sleep函数。我看到这种类型的函数在事件编程中没有立足之地。我应该怎么做?更新:经过思考和反馈,我会说答案是:仅在GUI主线程外调用sleep,如果您需要在GUI线程中等待,请使用processEvents()或事件循环,这将防止GUI卡住. 最佳答案 它不漂亮,但我在Qtmailinglistarchives中找到了它:QThread的sleep方法是protected,但是你可以这样暴露它:classSleeperThread:publicQThread{publi

c++ - 类似 print END << END;在 C++ 中?

有没有办法做类似PHP的事情print在C++中?(多行、未转义、易于剪切和粘贴的流插入) 最佳答案 C++11有原始的stringliterals://thisdoesn'thave'\n',but'\\'and'n'R"(yada"yadayada\n)"如果你需要这些括号,你也可以这样做,使用任何你想要的结束标记://thefollowingwillbe"(yada)(yada)(yada)"R"END((yada)(yada)(yada))END"它也适用于嵌入的新行://thefollowingwillbe"\n(yada

c++ - 来自另一个的 sleep 线程

给定两个线程A和B,是否有任何可移植的方式让A暂停B,而B中没有为此目的的任何自定义代码?基本原理:目前,B是一个非常复杂的算法,当A(监控线程)告诉它时,通过不时检查一些共享标志,它应该干净地退出。问题是出于调试目的,我想确切地知道A请求退出时B处于哪个状态(例如,看看我们忘记检查共享标志的地方),所以我想暂停B(用于调试)来自A。换句话说,我不仅需要同步线程,还需要同步调试线程。 最佳答案 这取决于系统。Windows有一个函数SuspendThread,但我承认我对它了解不多。在Unix下,您应该能够使用pthread_kil

c++ - Windows 上的 std::conditional_variable::wait_for、std::thread::sleep_for 受调整时钟的影响

嗯。我有Win10x64和这个非常简单的代码:intmain(){std::conditional_variablecv;std::mutexm;std::unique_locklock(m);while(1){cv.wait_for(lock,1000ms,[](){returnfalse;});std::cout是的。代码就像我期望的那样工作;表明'!'每一秒。但是,如果我更改本地时间(例如减去1小时/分钟),它会永远有效。如果我用WinAPISleep(1000)替换cv.wait_for(...)它工作正常。WinAPISleepConditionVariableCS也能正常工

c# - 如何在 C# 中以编程方式关闭 Windows XP Print Spooler 服务

我需要编写一个小型控制台应用程序(补丁)来关闭打印后台处理程序服务,做一些事情,然后启动打印后台处理程序服务。我想用C#写这个。有人能指出我正确的方向吗?提前致谢! 最佳答案 您可能可以使用ServiceController类来做到这一点:ServiceControllercontroller=newServiceController("Spooler");controller.Stop();...controller.Start(); 关于c#-如何在C#中以编程方式关闭Windows

c++ - C 中的 sleep 函数错误

我有一个数据转储文件,其中包含可用的不同时间戳数据,我从时间戳中获取时间并在该时间休眠我的c线程。但问题是实际时间差是10秒,而我在接收端收到的数据几乎是14、15秒的延迟。我正在使用窗口操作系统。请指导我。对不起我一周的英语。 最佳答案 休眠函数至少会休眠到你指定的时间,但不能保证它不会休眠更长时间。如果你需要一个准确的时间间隔,你将需要使用一些其他的机制。 关于c++-C中的sleep函数错误,我们在StackOverflow上找到一个类似的问题: htt

c - Sleep() 不准确吗?

我正在开发一个计时系统,我将实现一个计时器类。#include#include#includeintmain(){clock_tt1,t2;t1=clock();Sleep(10);t2=clock();printf("%i\n",(int)(t2-t1));return0;}这个程序应该打印“10”,但它打印了“15”或“16”。我需要小于1毫秒的更准确!建议?(也许有select()的超时?)注意:我在Windows7Ultimatex86上运行过这个程序。使用MinGW(C/C++)x86编译的程序。NOWITHINK>> 最佳答案

c++ - Windows C/Sleep() 函数在时钟漂移期间将如何运行?

如果我运行类似Sleep(10000)的程序,并且在此期间系统时钟发生变化,线程是否仍会休眠10秒的挂钟时间,或更少或更多?IE。Sleep()函数是否将毫秒转换为硬件滴答? 最佳答案 Sleep()与挂钟时间无关。它基于用于线程调度的同一计时器。不过,由于系统时钟的频率以及您实际计划在超时结束后运行的时间,您通常不会正好睡10秒。 关于c++-WindowsC/Sleep()函数在时钟漂移期间将如何运行?,我们在StackOverflow上找到一个类似的问题:

windows - 有没有收到消息就 sleep 的方法?

我正在使用一个主循环如下所示的服务:while(fServer.ServerState=ssStarted)and(Self.Terminated=false)dobeginSelf.ServiceThread.ProcessRequests(false);ProcessFiles;Sleep(3000);end;ProcessRequests很像Application.ProcessMessages。我无法将true传递给它,因为如果我这样做,它就会阻塞,直到收到来自Windows的消息,并且ProcessFiles不会运行,它必须持续运行。sleep是为了降低CPU使用率。在我尝试