草庐IT

退出后

全部标签

c++ - 如何在退出时调用插槽

我想在我的Qt应用程序关闭之前更新我的数据库。我想要类似connect(this,SIGNAL(quit()),this,SLOT(updateDatabase()))一种方法是引入一个退出按钮,但是如果用户按下Alt+F4是否可以实现此功能? 最佳答案 使用信号aboutToQuit()相反。Thissignalisemittedwhentheapplicationisabouttoquitthemaineventloop,e.g.whentheeventloopleveldropstozero.Thismayhappeneith

c++ - 如果需要超过 5 秒,如何退出使用 C++ 运行的进程?

我正在用C++实现一个检查系统。它运行具有不同测试的可执行文件。如果解决方案不正确,则可能需要很长时间才能完成某些严格的测试。这就是为什么我想将执行时间限制为5秒。我正在使用system()函数来运行可执行文件:system("./solution");.NET有一个很棒的WaitForExit()方法,那么原生C++呢?我也在使用Qt,因此欢迎使用基于Qt的解决方案。那么有没有办法限制外部进程的执行时间为5秒呢?谢谢 最佳答案 将QProcess与QTimer结合使用,这样您就可以在5秒后终止它。类似的东西;QProcesspro

c++ - 如果线程在调用 pthread_join 之前退出怎么办

我有一个小代码void*PrintHello(void*threadid){cout我会在创建后的某个时间加入线程。如果main试图加入一个已经退出的线程,会发生什么? 最佳答案 Whatwillhappenifthemaintriestojoinathreadwhichalreadyexited?连接操作将立即完成并返回。 关于c++-如果线程在调用pthread_join之前退出怎么办,我们在StackOverflow上找到一个类似的问题: https:/

c++ - 函数退出时出现段错误的可能原因

在C++中退出函数时出现段错误,您能想到哪些可能的原因?我的意思是,我在C++程序中有一个可重现的段错误,当我调查使用GDB时说ProgramreceivedsignalSIGSEGV,Segmentationfault.FooBar(bla=...)atfoo.cpp:5959}指示的行包含我的函数的右括号。 最佳答案 这可能有很多原因。在Valgrind下运行程序,它很可能会告诉您确切的原因,或者至少会帮助调查和缩小问题范围。 关于c++-函数退出时出现段错误的可能原因,我们在Sta

c++ - 分析永不退出的基于 C 或 C++ 的应用程序

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭7年前。Improvethisquestion我对分析应用程序有一点疑问,这些应用程序在我们手动重启机器之前永远不会退出。我使用了像valgrind这样的工具,它讨论了内存泄漏或任何应用程序在一段时间后退出的膨胀。但是否有任何工具可用于了解应用程序在不同阶段产生的内存消耗、膨胀、开销(如果可能)?注意:我更想了解不退出的应用程序...如果应用程序退出,我可以使用valgrind等工具..

c++ - prctl(PR_SET_PDEATHSIG, SIGNAL) 在父线程退出时调用,而不是在父进程退出时调用

我有一个正在fork到子进程的进程。如果父进程存在,则子进程不应存在。因此,我在子进程中调用::prctl(PR_SET_PDEATHSIG,SIGKILL)以在父进程死亡时将其杀死。最终发生的事情是父线程调用pthread_exit,该线程最终成为杀死子进程的催化剂。这是我的代码:父类.cpp:#include#include#include#include#includevoid*run(void*ptr){std::cout子.cpp:#include#include#include#includeintmain(){std::cout在命令行中运行以下命令:$./parent同

退出并重新加入房间

我正在使用SimpleWebrtc进行视频聊天应用程序。挂断电话后,它可以正常工作(webrtc.leaveRoom())当我尝试再次致电时,它不起作用。它不执行webrtc.on('readyToCall',function(){console.log('Readytocall');webrtc.joinRoom(room);});那么我该如何讨论这个问题呢?我的旧连接有任何问题吗?看答案我找到了解决方案。我在SimpleWebrtc内进行了更改。我更改了文件/node_modules/simplewebrtc/src/simplewebrtc.js。我只是从行中删除评论'forcenewc

c++ - 管理退出程序的转义键

我不知道如何实现退出程序退出键的管理。我也不知道将它放在我的代码中的什么位置,因为如果我将它放在一个方法中,它怎么能在任何地方退出?这是我的实际代码:#include#include#include#include#include#include#include"LibQt.hpp"LibQt::LibQt():QWidget(){this->size_x=500;this->size_y=500;QWidget::setWindowTitle("ThePlazza");setFixedSize(this->size_x,this->size_y);manageOrder();}Lib

c++ - 如何期待 gtest 中的程序退出?

我正在测试一些使用来自glog的CHECK的代码我想测试在某些情况下此检查是否失败。我的代码如下所示:voidMyClass::foo(){//stuff...//It'sactuallyimportantthatthebinarygetsabortedifthisflagisfalseCHECK(some_flag)我已经对gtest进行了一些研究,以及我如何能够对此进行测试。我找到了EXPECT_FATAL_FAILURE、EXPECT_NONFATAL_FAILURE和HAS_FATAL_FAILURE,但我还没弄清楚如何使用它们。我相当有信心,如果我将CHECK(some_fl

c++ - ExitThread 与允许线程函数正常退出 - C++

我的应用程序有一个使用CreateThread创建的线程。从所述线程中调用ExitThread和允许线程正常退出(即到达线程函数的末尾)之间有什么区别?我正在使用C++和VisualStudio2008。谢谢。 最佳答案 其实有一点很重要:...,在C++代码中,线程在调用任何析构函数或执行任何其他自动清理之前退出。因此,在C++代码中,您应该从线程函数返回(编辑Source) 关于c++-ExitThread与允许线程函数正常退出-C++,我们在StackOverflow上找到一个类似