2010-10-13 12 views

Odpowiedz

37

Tak .. Szczeliny są zaledwie normalne funkcje i można do nich dzwonić bezpośrednio ..

Od docs,

Gniazdo jest wywoływana, gdy sygnał podłączony do tego jest emitowane. Sloty są normalnymi funkcjami C++ i można je nazwać normalnie; ich jedyną specjalną cechą jest to, że można do nich podłączyć sygnały.

+4

Dlatego lubię dobrą dokumentację: wyraźną i prostą. – Klaim

+0

Wiem, że można je nazwać normalnie. Czytam również dokumentację. Ale pytanie jest bardziej projektem niż pytaniem C++. – Daniel

+6

Problem jest wielowątkowy. Jeśli wywołasz slot bezpośrednio, wątek wykonawczy może być inny niż wykonywany, użyłbyś funkcji connect() (jeśli obiekt slotu został wcześniej przeniesiony do innego wątku). Zobacz także http://stackoverflow.com/questions/1144240/qt-how-to-call-slot-from-custom-c-code-running-in-a-different-thread – Trilarion

Powiązane problemy