class ColorChangeEvent : public QCustomEvent { public: ColorChangeEvent( QColor color ) : QCustomEvent( ), c( color ) {} QColor color() const { return c; } private: QColor c; }; // To send an event of this custom event type: ColorChangeEvent* ce = ne
信号是一种古老的进程间通信方式,下面的例子利用sigqueue发送信号并附带数据:sigaction函数接受信号并且处理时接受数据. 1.sigqueue: 新的信号发送函数,比kill()函数传递了更多附加信息,但它只能向一个进程发送信号,针对实时信号(支持排队不会丢失),与sigaction配合使用. int sigqueue(pid_t pid, int sig, const union sigval value): typedef union sigval { int sival_int
Qt3中可以直接向线程发送消息 QThread::postEventQ4中已不支持为了模拟向线程发送消息,可以通过QObject::moveToThread后,然后再向这个QObject发送消息 object = new QObject;object.moveToThread(thread);QCoreApplication::postEvent(object, new Event);