Павел @kkmspbread-only
девелопер cpp
Информация
- В рейтинге
- Не участвует
- Откуда
- Парголово, Санкт-Петербург и область, Россия
- Дата рождения
- Зарегистрирован
- Активность
Специализация
Fullstack Developer
Senior
От 250 000 ₽
OOP
Database
MySQL
PHP
C++
Programming microcontrollers
Qt
Software development
Development of drivers
C
Делал похожую технологию, когда отлаживал stm32 USB rndis, в тупиковых ситуациях очень помогает
Спасибо, красивая история, было интересно. Задумался как в приложении на С++ под виндой тоже такое организовать. Думаю Watch dog поток сделать, по аналогии с контроллерами. А то действительно - много версий одной программы уже работает и логи показывают например, что программа корректно открылась, но вот корректного закрытия не произошло (иногда)...
Но вот как сделать такое же в cpp файле я лично не пойму. Условие - через namespace.
На всякий случай Qt4, msvc-2010.
Спасибо за статью, подвигло для изучения именно стандарта (откладывал на потом).
Недавно с удивлением случайно открыл в С++98 возможность в заголовках глобально определять QString через namespace. По факту надо было всего-то глобально один раз определить константную строку доступную в других единицах трансляции:
namespace my{
static const QString aaa =QString::fromUtf8("blablabla");
}
Это в хэдере.
Тут похоже cmake надо использовать и Qt>=5. В общем я на qmake и Qt4, сами понимаете. Меня больше волнует нет ли в kde развития QTableView и QSqlTableModel. Вот это была бы новость.
Соглашусь, на timerEvent к примеру можно ожидать чего угодно, не тормозя поток.
Стесняюсь спросить, вот у меня один поток в приложении - как у меня будет исполняться на тредпуле или ещё на чем-то?
Я не уверен, но когда говорится про асинхронную операцию, то всегда создается второй поток.
Я все-таки в своем примере предполагаю, что у меня один поток.
А вы KJob использовали в Qt проектах? Я как-то первый раз об этом слышу.
Да и не планирую пока
Скоро 7 будет, тут нельзя останавливаться
Если вы обратили внимание:
таймер возвращает результат в окно (индикации). Этим стандартный не устроил.
Я третий раз уже объясняю, что мне надо возращать результат выполнения команды как разные объекты, разные варианты классов, структур и т.д. Чего тут не понятного?
Спасибо конечно. KDE конечно интересно как вариант. Но блин билдить kde исходники пока не готов. На будущее конечно посмотрим и Akonadi в.т.ч. Кстати я под виндой если что.
Ну извините, если задел ваше что-то.
Может кому из новичков все-таки полезно будет.
А "диалог окно на qt" я проверял по интернету и не раз. Тут же не речь о том как вывести диалоговое окно.
В принципе да. Но команду можно запускать и вне диалога. Сама команда стартует отложенно по таймеру. Связь между ними диалогом и командой через signal/slot.
QThread::sleep(100); тогда так лучше не делать
да public забыл (как обычно), исправил
Да Qt 4 это C++98. И линакс просто С... И чем линакс плох?
В С++ 98 абстрактные классы есть, без лямбд мы обойдемся, R-value тоже не горит.
Но главное, без Qt5,6,7,8 можно прекрасно жить.
Но ведь работает? Я лично привык и мне не мешает (вроде бы)
Можно еще 3.11 вспомнить, учится никогда не навредит. Дело в удобстве, кто к чему привык и новых возможностях. Для меня Qt5 это не новые возможности, это больше новый гемморой.
Это кому как. Для меня в данном случае это реально панацея от лишних проблем.