/****************************************************************************
** Meta object code from reading C++ file 'DoWork.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.9.0)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../../threadFour/DoWork.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'DoWork.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.9.0. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
struct qt_meta_stringdata_DoWork_t {
QByteArrayData data[5];
char stringdata0[31];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_DoWork_t, stringdata0) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_DoWork_t qt_meta_stringdata_DoWork = {
{
QT_MOC_LITERAL(0, 0, 6), // "DoWork"
QT_MOC_LITERAL(1, 7, 5), // "nihao"
QT_MOC_LITERAL(2, 13, 0), // ""
QT_MOC_LITERAL(3, 14, 8), // "qunimade"
QT_MOC_LITERAL(4, 23, 7) // "nihaoma"
},
"DoWork\0nihao\0\0qunimade\0nihaoma"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_DoWork[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
3, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
1, // signalCount
// signals: name, argc, parameters, tag, flags
1, 0, 29, 2, 0x06 /* Public */,
// slots: name, argc, parameters, tag, flags
3, 0, 30, 2, 0x0a /* Public */,
4, 0, 31, 2, 0x0a /* Public */,
// signals: parameters
QMetaType::Void,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void DoWork::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
DoWork *_t = static_cast<DoWork *>(_o);
Q_UNUSED(_t)
switch (_id) {
case 0: _t->nihao(); break;
case 1: _t->qunimade(); break;
case 2: _t->nihaoma(); break;
default: ;
}
} else if (_c == QMetaObject::IndexOfMethod) {
int *result = reinterpret_cast<int *>(_a[0]);
void **func = reinterpret_cast<void **>(_a[1]);
{
typedef void (DoWork::*_t)();
if (*reinterpret_cast<_t *>(func) == static_cast<_t>(&DoWork::nihao)) {
*result = 0;
return;
}
}
}
Q_UNUSED(_a);
}
const QMetaObject DoWork::staticMetaObject = {
{ &QObject::staticMetaObject, qt_meta_stringdata_DoWork.data,
qt_meta_data_DoWork, qt_static_metacall, nullptr, nullptr}
};
const QMetaObject *DoWork::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *DoWork::qt_metacast(const char *_clname)
{
if (!_clname) return nullptr;
if (!strcmp(_clname, qt_meta_stringdata_DoWork.stringdata0))
return static_cast<void*>(const_cast< DoWork*>(this));
return QObject::qt_metacast(_clname);
}
int DoWork::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QObject::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 3)
qt_static_metacall(this, _c, _id, _a);
_id -= 3;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 3)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 3;
}
return _id;
}
// SIGNAL 0
void DoWork::nihao()
{
QMetaObject::activate(this, &staticMetaObject, 0, nullptr);
}
QT_WARNING_POP
QT_END_MOC_NAMESPACE
没有合适的资源?快使用搜索试试~ 我知道了~
Qt5中两种线程操作的方法 demo代码
共50个文件
cpp:10个
obj:10个
h:8个
需积分: 48 99 下载量 165 浏览量
2019-03-08
12:09:28
上传
评论 1
收藏 1.88MB RAR 举报
温馨提示
Qt5中两种线程操作的方法 1. 通过创建QTread子实现run()函数来实现 QThread::run()是线程的入口 相当于 main函数一样 创建的线程通过调用start()来执行run(); run() 是一个虚函数 通过子类实现方法 通过moveToThread()函数来实现 作用:将某一个对象从当前的线程中推到另一个线程中,但是不能将其他线程的对象拉到当前线程上; 原理:其实是通过信号和槽的方式实现;将需要通过线程处理的代码放入到一个槽函数中; 注意:如果对象存在父对象 则moveToThread()函数不起作用,在帮助文档中的原话是: Changes the thread affinity for this object and its children. The object cannot be moved if it has a parent. Event processing will continue in the targetThread.
资源推荐
资源详情
资源评论
收起资源包目录
thread.rar (50个子文件)
threadFour
threadFour
widget.ui 1KB
DoWork.cpp 492B
main.cpp 774B
widget.cpp 913B
widget.h 438B
DoWork.h 324B
threadFour.pro.user 23KB
threadFour.pro 1KB
build-threadFour-Desktop_Qt_5_9_0_MSVC2015_64bit-Debug
ui_widget.h 2KB
release
debug
moc_DoWork.obj 50KB
threadFour.pdb 2MB
widget.obj 135KB
threadFour.exe 78KB
threadFour.vc.pdb 1.46MB
main.obj 64KB
moc_predefs.h 250B
moc_DoWork.cpp 4KB
moc_widget.obj 58KB
DoWork.obj 66KB
threadFour.ilk 829KB
moc_widget.cpp 4KB
.qmake.stash 1KB
Makefile 30KB
Makefile.Debug 50KB
Makefile.Release 50KB
threadThree
threadThree
threadThree.pro 1KB
widget.ui 955B
ThreadWork.cpp 629B
main.cpp 440B
threadThree.pro.user 23KB
widget.cpp 1KB
widget.h 456B
ThreadWork.h 337B
build-threadThree-Desktop_Qt_5_9_0_MSVC2015_64bit-Debug
ui_widget.h 2KB
release
debug
threadThree.vc.pdb 1.48MB
moc_ThreadWork.obj 60KB
widget.obj 182KB
threadThree.exe 96KB
threadThree.pdb 2.08MB
threadThree.ilk 1.13MB
main.obj 64KB
moc_predefs.h 250B
moc_widget.obj 58KB
ThreadWork.obj 69KB
moc_ThreadWork.cpp 4KB
moc_widget.cpp 4KB
.qmake.stash 1KB
Makefile 30KB
Makefile.Debug 51KB
Makefile.Release 51KB
共 50 条
- 1
资源评论
flowerspring
- 粉丝: 265
- 资源: 19
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功