The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Релиз фреймворка Qt 6.5"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Подсказка: Для контроля за появлением новых сообщений - перед выходом жмите "Пометить прочитанным".
. "Релиз фреймворка Qt 6.5" +/
Сообщение от n00by (ok), 12-Апр-23, 12:53 
>> Вы упорно не видите моё сообщение №193? А №205?
> А что там надо увидеть?

Там всё прекрасно написано, что надо увидеть. В предыдущем сообщении я повторял. Могу ещё раз скопировать, в надежде, что до Вас дойдёт его смысл:

#  ifdef Q_OS_WINRT
    // If you wish to accept the memory leaks, uncomment the part above.
    // See:
    //  https://support.microsoft.com/en-us/kb/104641
    //  https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx
#    error "Microsoft documentation says this combination leaks memory every time a thread is started. " \
    "Please change your build back to -MD/-MDd or, if you understand this issue and want to continue, " \
    "edit this source file."
#  endif

...

#else
    // MSVC -MD or -MDd or MinGW build
    d->handle = CreateThread(nullptr, d->stackSize,
                             reinterpret_cast<LPTHREAD_START_ROUTINE>(QThreadPrivate::start),
                             this, CREATE_SUSPENDED, reinterpret_cast<LPDWORD>(&d->id));

> Что вы не знаете, что код в остальной части этого же файла
> компилируется MinGW. Кроме этого больше там ничего нет.

В контексте Ваших гипотез по поводу --enable-threads=win32 интересны исключительно реализации QThread::start()

>> а умелец собирать не смог прочитать пару #if-ов и не знает CreateThread().
> В другой части года этого же файла есть  pthread_mutexattr_settype() и что?

Вышеприведённый код скопирован из src/corelib/thread/qthread_win.cpp
Вот ссылка на версию 6.5 https://github.com/qt/qtbase/blob/6.5/src/corelib/thread/qth...
там отсутствует pthread_mutexattr_settype()
Получается, Вы что-то путаете.
Хотя теперь я начинаю рассматривать версию, что намеренно лжёте.

> Наверное, Windows - это Posix теперь, если компилируется MinGW.

Совершенно точно - в №147 шла речь о WinAPI. Qt с какой-то версии использует появившиеся в Windows 10 функции, и потому не работает в 7-ке.

> Nooby, вы разве не видели, что копированный вами код внезапно есть и
> в Qt5?
> qtbase/src/corelib/thread/qthread_win.cpp
> В ревизии 558fc903acc610769279da2737ad679aa9fd728d от 28 января 2020 года.
> https://github.com/qt/qtbase/commit/58c69df4d38324644bc49ec5...
> Строка 133.
> Но это версия Qt5.

Конечно видел, я и копировал из 5й версии. И рядом написал, что в части создания потоков оно будет точно так же работать и в будущих Qt. Потому порекомендовал не отвлекаться на создание тредов, а наконец порадовать собранной Qt 6.5, работающей в Windows 7.

Если бы я копировал из версии 6.5, Вы бы увидели нижеследующий код и не генерировали удивительную гипотезу про WinRT.

#if defined(Q_CC_MSVC) && !defined(_DLL)
    // MSVC -MT or -MTd build
    d->handle = (Qt::HANDLE) _beginthreadex(NULL, d->stackSize, QThreadPrivate::start,
                                            this, CREATE_SUSPENDED, &(d->id));
#else
    // MSVC -MD or -MDd or MinGW build
    d->handle = CreateThread(nullptr, d->stackSize,
                             reinterpret_cast<LPTHREAD_START_ROUTINE>(QThreadPrivate::start),
                             this, CREATE_SUSPENDED, reinterpret_cast<LPDWORD>(&d->id));
#endif

> Я еще раз задаю вопрос, как же тогда MinGW вызывает потоки Windows,
> если в коде на C++ вызываются Posx- методы потоков? Ответ прост
> либа - w32api, которая является транслятором вызовов.

А если бы Вы посмотрели код и смогли бы его понять, Вы бы увидели. Попробуйте наконец. Видите там MinGW?

>> Не видел сборок для Win7.
> Опять вы сменили тему. Где в сборках для MinGW выполняется код с
> CreateThread()? ЭТО ЗАЯВИЛИ ВЫ! Так где он выполняется?

Я уже подустал это копировать, но на всякий случай еще раз:

    // MSVC -MD or -MDd or MinGW build
    d->handle = CreateThread(nullptr, d->stackSize,

А так то тема "После такого подлого и необоснованного бросания Win7, я больше не фанат qt" (№2)

На что Вы ответили в №123 "Что мешает собрать Qt6 для Windows 7? ... тем более сборки такие уже есть."

Так что Вам надо показать такую сборку, а не отвлекаться на треды (тем более не понимая, как они создаются в Windows).

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Релиз фреймворка Qt 6.5, opennews, 03-Апр-23, 14:30  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру