- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在“搞乱”线程池,我注意到一个奇怪的异常。所以我在这里问你:我是否正确使用了这个对象?或者您认为这只是一个错误或一个虚拟警告?这里是。我用 QThreadPool 实现了一个基本示例(它与文档中的示例几乎相同:http://qt-project.org/doc/qt-4.8/thread-basics.html#example-1-using-the-thread-pool)。
#include <QCoreApplication>
#include <QTimer>
#include <QRunnable>
#include <QThreadPool>
#include <QDebug>
class Work : public QRunnable
{
public:
void run()
{
qDebug() << "Hello from thread " << QThread::currentThread();
}
};
int main(int argc, char *argv[])
{
QCoreApplication app(argc, argv);
Work work;
work.setAutoDelete(false);
QThreadPool *threadPool = QThreadPool::globalInstance();
threadPool->start(&work);
qDebug() << "hello from GUI thread " << QThread::currentThread();
threadPool->waitForDone();
QTimer::singleShot(3000, &app, SLOT(quit()));
return app.exec();
}
如果我在状态栏中启动调试器,它会显示诸如“正在运行”和“调试器已完成”之类的消息。它告诉我:
Exception at 0x75f6812f, code: 0x406d1388: Startup complete, flags 0x0 (first chance) in KERNELBASE!RaiseException
该程序可以运行,因为它写入了正确的内容并且不会挂起,但该消息对我来说很奇怪。
我做错了什么吗?
谢谢
最佳答案
这是第一次机会异常(exception)。它显然被代码捕获并处理了,否则你的应用程序就会崩溃。所以这不是问题。
关于c++ - QThreadPool 奇怪的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24800954/
谁能提供一个使用 QThreadPool 类中的“reserveThread”和/或“releaseThread”的例子?我已阅读文档,但我真的不明白您何时会使用这些功能。互联网搜索示例已空空如也。
我目前正在使用 QThreadPool 来运行一些计算,但是我发现如果我将所有东西都扔进 QThreadPool,它实际上表现不佳并且似乎导致了一些崩溃问题。所以我的想法是一次只有几个线程传递到 QT
我正在“搞乱”线程池,我注意到一个奇怪的异常。所以我在这里问你:我是否正确使用了这个对象?或者您认为这只是一个错误或一个虚拟警告?这里是。我用 QThreadPool 实现了一个基本示例(它与文档中的
在尝试 QThreadPool 之前,我认为多线程程序可能会产生不确定的结果,具体取决于操作系统如何调度它。不过,今天我的看法有点改变。 这是来自 main.cpp 的代码: runnableInst
我正在寻找一些关于使用 QThreadPool 的简明示例。这是我的使用方法: QThreadPool *thread_pool = QThreadPool::globalInstance(); My
如何覆盖 PyQt5 QThreadPool ?是否可以 ? 关注这篇文章https://www.learnpyqt.com/tutorials/multithreading-pyqt-applica
我目前正在将共享指针与 QThreadPool 一起用于多线程应用程序。但是,当线程完成计算时,我遇到了崩溃。 假设类 A 继承自 QRunnable,当传入共享指针作为参数时,它会更新其类变量。这是
我正在编写一个路径跟踪器,并希望通过线程将其并行化。我有一个关于 QT 中多线程对象的设计问题,特别是关于 QRunnable 类。 在我下面的(伪代码)中,我有一个启动 PTRunnable 实例的
我有很多长时间运行的任务在我的 Python 应用程序的后台运行。我把它们都放在了全局QThreadPool中。当用户退出时,所有这些后台任务都需要停止。 现在,我有以下代码: app.aboutTo
我想并行运行 pyqt5 QThreads,但我的代码似乎按顺序运行,有人能告诉我如何并行运行 QThreads 吗? 我的代码的输出:我预计它是并行运行的,而不是按顺序运行的。 Multithrea
我想将多线程 webkit 与 QThreadPool 一起使用 我的代码是: webkitrunnable.cpp: webkitRunnable::webkitRunnable(QUrl inpu
我有一个应该在线程中运行的类,并且需要一个事件循环用于插槽,目前我用 moveToThread() 运行它很好, 但我想使用 QThreadPool我遇到了一个问题。 当使用 QThreadPool
我正在尝试处理大量的 csv 数据,因为它是成 block 的。如果我在没有线程的情况下运行 chunkprocess,应用程序不会崩溃。但是,一旦我添加到线程池中,应用程序就会崩溃并引发以下错误。
我正在做一个使用 QSqlDatabase 的项目。现在我正在使用 QtConcurrent (QFuture) 来执行任何 SQL 命令。 现在,使用 QFuture 运行的每个新命令都会创建新的
我知道一般的理论,线程,QRunnable 和 QThreadPool。它是如何适应的?我的意思是当 QRunnable 的一个实例被创建并分配给 ThreadPool 时,启动一个线程意味着什么?多
我正在构建一个小型多线程 Web 服务器。 QTcpSockets 在主线程中获取,然后由 QtConcurrent 移交给 QThreadPool,后者最终处理数据并发出答案。 我的问题是套接字是在
在应用程序中使用 QThreadPool::globalInstance() 时,我可以将最大线程数设置为一个数字(例如本例中的 50) QThreadPool::globalInstance()->
我在阅读 Qt 的信号与槽 [1] 时注意到它声称信号和槽的开销比任何新操作或删除操作都要低得多。所以我做了一个测试: #include #include #include #include
背景: 我有一个脚本,允许我通过来自私有(private)编辑器的 API 对 PostgreSQL 数据库进行空间查询(我无法直接查询数据库)。该 API 适用于 python 3.2。简而言之,该
我对 QThreadPool 的工作原理感到困惑,并且找不到答案。我想要这样的东西: class Task : public QRunnable { solve problem #nb } 现在,例如
我是一名优秀的程序员,十分优秀!