Size: a a a

2021 January 24

A

Amir in Qt
Suigintou45 E14
👆к этому. промахнулся постом)
Я так и подумал, но это нерелевантная информация для юзера, так как по задаче ему нужно 5 потоков. Во всяком случае первая часть вашего ответа про форич (про второе я не знаю). Думаю это не очень хорошо людей в заблуждение вводить, даже частично
источник

з

зима in Qt
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread

ловлю вот такую штуку
есть обьект класса, в нем создается тред и обьект другого класса(*), который переносится сразу в тот тред.
в * создается таймер, но выпиливается(
почему(
источник

SE

Suigintou45 E14 in Qt
зима
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread

ловлю вот такую штуку
есть обьект класса, в нем создается тред и обьект другого класса(*), который переносится сразу в тот тред.
в * создается таймер, но выпиливается(
почему(
Таймер там не в конструкторе этого другого класса создаётся?
источник

з

зима in Qt
Suigintou45 E14
Таймер там не в конструкторе этого другого класса создаётся?
да, в нем
источник

SE

Suigintou45 E14 in Qt
Конструктор же в потоке создателя выполняется
источник

з

зима in Qt
переносил в другую функцию, но таймер также ругается
источник

SE

Suigintou45 E14 in Qt
Инициализацию вынести отдельно, вызывать после moveToThread асинхронно
источник

з

зима in Qt
так и сделал...
все также не работает:(
источник

SE

Suigintou45 E14 in Qt
зима
так и сделал...
все также не работает:(
Старт не напрямую вызывать, а через QMetaObject::invokeMethod с контекстом и с queued connection, или с QTimer::singleShot
источник

з

зима in Qt
источник

з

зима in Qt
Suigintou45 E14
Старт не напрямую вызывать, а через QMetaObject::invokeMethod с контекстом и с queued connection, или с QTimer::singleShot
источник

AU

Abu Umar in Qt
The return value of the function call is placed in ret.
источник

з

зима in Qt
зима
QObject::killTimer: Timers cannot be stopped from another thread
QObject::startTimer: Timers cannot be started from another thread

ловлю вот такую штуку
есть обьект класса, в нем создается тред и обьект другого класса(*), который переносится сразу в тот тред.
в * создается таймер, но выпиливается(
почему(
учитывая, что таймер создавался в другой функции, другом потоке. но все равно оказался в главном. то и остальные, любые созданные, в (*) обьекты классов тоже надо вызывать через invokeMethod?
источник

з

зима in Qt
Abu Umar
The return value of the function call is placed in ret.
а если там void
источник

AU

Abu Umar in Qt
зима
а если там void
Тогда nullptr?
источник

AU

Abu Umar in Qt
template <typename Functor, typename FunctorReturnType> bool QMetaObject::invokeMethod(QObject *context, Functor function, Qt::ConnectionTypeQObject *context, Functor function, Qt::ConnectionType type = Qt::AutoConnection, FunctorReturnType *ret = nullptr)type = Qt::AutoConnection, FunctorReturnType *ret = nullptr)
По крайней мере дока так говорит
источник

з

зима in Qt
Abu Umar
Тогда nullptr?
да, я дурашка
источник

з

зима in Qt
пасиба!
а можно было узнать, в каком потоке находится *, и насильно пихнуть все вложенные обьекты дочерние?
источник
2021 January 25

H

Hwang in Qt
Кто может подсказать, в чем проблема:
почему может быть так, что одна из ролей определяется в qml-е, а другие - нет: в моем случае frameDuration опредилися а resourceInfo - undefined
источник

H

Hwang in Qt
источник