QMetaObject::invokeMethod(*obj, "onDescriptorReadyToWrite", Qt::QueuedConnection, Q_ARG(int, дескриптор))

Может ли кто-нибудь объяснить мне на основе приведенной выше строки кода

  1. В чем разница между использованием MetaObject и Signal & Slot
  2. Что происходит, когда строка выше выполняется

1 ответ

  1. Signals & Slots — это реализация шаблона наблюдателя поверх метасистемы Qt. Оно использует QMetaObject::invokeMethodв его реализации.
  2. А QMetaCallEventобъект создается и отправляется в цикл событий *objсвязано с.

Вот хорошая серия, в которой много подробностей о сигналах и слотах: Как работают сигналы и слоты Qt - Часть 3 - Соединения в очереди и между потоками (я связываю часть 3, потому что в ней есть ссылки на предыдущие части)

Другие вопросы по тегам