13 个解决方案
#1
不会的。。。。。。。
#2
要看你的代码是怎么设计的。
#3
可我着真的出现了啊
#4
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。
#5
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。
NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
#6
槽函数在线程中执行啊
#7
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
#8
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
#9
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
实际上,不是的话,会更简单。
#10
谁给解释下为什么呢!
#11
不对不对!m_timer = new QTimer()放到run()里,都启动不了定时器!
#12
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
实际上,不是的话,会更简单。
为啥是QThread的派生类,QTimer不在次线程中,你的槽函数也不会在次线程中执行???
#13
QThread是一个很简单,又很复杂的东西。下面的blog应该能回答你关于QThread的几乎所有疑问
http://blog.debao.me/2013/08/how-to-use-qthread-in-the-right-way-part-1/
http://blog.debao.me/2013/08/how-to-use-qthread-in-the-right-way-part-1/
#1
不会的。。。。。。。
#2
要看你的代码是怎么设计的。
#3
不会的。。。。。。。
可我着真的出现了啊
#4
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。
#5
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。
NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
#6
槽函数在线程中执行啊
#7
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
#8
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
#9
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
实际上,不是的话,会更简单。
#10
谁给解释下为什么呢!
#11
不对不对!m_timer = new QTimer()放到run()里,都启动不了定时器!
#12
不会的。。。。。。。
可我着真的出现了啊
但是,你并没有证据证明你的槽函数是在次线程执行的啊?
另外,定时器放于次线程,和放在主线程,本身也没多大区别,关于在,你的槽函数在那个线程中执行。NetThread::NetThread()
{
tran_task = 0;
task_counter = 0;
image_buf = new char [1024*20];
update_check_timer = new QTimer(this);
connect(update_check_timer, SIGNAL(timeout()), this, SLOT(update_check())); //时间显示
}
NetThread::~NetThread()
{
delete image_buf;
}
void NetThread::update_check()
{。。。。。。
你这儿的NetThread是QThread的派生类?
如果是的话,不光你的QTimer不在次线程中,你的槽函数也不会在次线程中执行。
肯定是啊!
网上看到 “m_timer = new QTimer()放到run()里“ 试了下真的解决啦
实际上,不是的话,会更简单。
为啥是QThread的派生类,QTimer不在次线程中,你的槽函数也不会在次线程中执行???
#13
QThread是一个很简单,又很复杂的东西。下面的blog应该能回答你关于QThread的几乎所有疑问
http://blog.debao.me/2013/08/how-to-use-qthread-in-the-right-way-part-1/
http://blog.debao.me/2013/08/how-to-use-qthread-in-the-right-way-part-1/