Size: a a a

2021 April 21

D

Dmitriy in Qt
reentrant != thread safe, вроде старый уже спор)
источник

A

Alex in Qt
Потому что Qt рассчитана на многопоточность. Дана статическая функция, безо всяких указаний по корректному использованию. Где основания предполагать, что её нельзя звать из разных потоков одновременно?
источник

A

Alex in Qt
я вообще думаю, что это баг, только не понятно, в коде или в документации
источник

A

Alex in Qt
А что такое reentant для статического метода?
источник

м

мыши in Qt
а что в ассерте написано ?
источник

A

Alex in Qt
---------------------------
Microsoft Visual C++ Runtime Library
---------------------------
Debug Error!

Program: C:\Qt\5.15.2\msvc2019_64\bin\Qt5Cored.dll
Module: 5.15.2
File: time\qcalendar.cpp
Line: 105

ASSERT: "byId[size_t(id)] == nullptr" in file time\qcalendar.cpp, line 105
источник

A

Alex in Qt
вываливается очень стабильно, но только на этом одном компе из многих девелоперских
источник

A

AntiSpamBot in Qt
This is spam protection. You have 30 seconds to press the button or you will be banned!
источник

A

Alex in Qt
Кстати, я сейчас разул глаза, здесь всё ещё более непонятно. Падает не currentDateTimeUtc, а date.toString():

auto date = QDateTime::currentDateTimeUtc();
auto str = date.toString("yyyyMMdd_hhmmss");
источник

A

Alex in Qt
вот этот фрагмент кода вызывается разными потоками, и падает на toString
источник

м

мыши in Qt
есть подозрение, что надо разувать глаза еще дальше =)
источник

A

Alex in Qt
некуда дальше
источник

我が名はレギオン... in Qt
https://www.opencoverage.net/qtbase/QtBase_html/source_714.html
Тут есть реализация, судя по ней падать не должно
источник

A

Alex in Qt
Qt что, кэширует объекты QDateTime, и если дважды вызвал в течение одной секунды - возвращает один и тот же инстанс?
источник

A

Alex in Qt
если эти два вызова делать под локом, проблема исчезает
источник

我が名はレギオン... in Qt
По адресу проверь можно
источник

A

Alex in Qt
уже пробую, но вызов qInfo или OutputDebugString может сбить тайминги и спугнуть ошибку
источник

AU

Abu Umar in Qt
а отладчиком же можно посмотреть
источник

A

Alex in Qt
Повторил ошибку, все инстансы разные. Не понимаю, что ему не так, сказано же, что класс reentrant.
источник

M

Mr.Mait in Qt
Возьми да посмотри код, там никаких мьютексов
источник