QObject::startTimer: Timers cannot be started from another thread
错误原因:QObject是可重入的,它的大多数非GUI子类,例如QTimer, QTcpSocket, QUdpSocket and QProcess都是可重入的,使得这些类可以同时用于多线程。需要注意的是,这些类设计为从一个单一的线程创建和使用的,在一个线程创建对象,而从另外一个线程调用对象的函数并不能保证行得通。
本例中成员变量QTimer是在主线程创建对象时创建的,但是是在run函数中调用,run函数运行在另一个线程中,所以提示错误。