Ответы пользователя по тегу C++
  • Можно ли применить define что бы изменить реализацию функции, или как лучше это сделать?

    Rulexec
    @Rulexec
    Метатеоретик теории типов
    Не программирую на C++, не использую Qt, но похоже ваш moc — это отдельный тул, который участвует в процессе сборки. Нет никаких проблем после него запустить программу на любом ЯП, которая выполнит чуть более умный препроцессинг, найдя в файле позицию ClassA::qt_metacall и затем заменит первое вхождение QObject::qt_metacall на InterfaceA::qt_metacall.
    Ответ написан
    2 комментария
  • В чем при программировании многопоточности возникает ошибка?

    Rulexec
    @Rulexec
    Метатеоретик теории типов
    В документации SuspendThread написано, что его лучше использовать только отладчикам, а не в реальной жизни.

    Calling SuspendThread on a thread that owns a synchronization object, such as a mutex or critical section, can lead to a deadlock if the calling thread tries to obtain a synchronization object owned by a suspended thread.


    Кроме того, SuspendThread/ResumeThread инкрементируют/декрементируют счётчик, в зависимости от того поток работает или нет. Проверяйте что возвращают функции, т.к. если, например, ResumeThread провалится, в итоге вы получите рассинхронизацию счётчика и уже никогда не сможете его разбудить.

    Возможно цикл в одной из задач завершился и тогда методы тоже делают что-нибудь несуразное.
    Ответ написан
    Комментировать
  • Как повысить уровень программирования в общем и в C++ в частности?

    Rulexec
    @Rulexec
    Метатеоретик теории типов
    Больше велосипедов в домашних проектах.

    Например, попробуйте на C++ написать свой HTTP-сервер. Который бы был полностью асинхронен. Чтобы можно было взять вашу библиотеку, создать экземпляр сервера, указать ему порт, навешать хэндлеров на обработку запросов, которым бы передавались объекты для управления запросом (в том числе считывание/запись данных, сервер не должен делать этого сам, приложение должно) и от которого не требовалось бы произвести обработку запроса тут же на месте, а когда ему захочется в будущем.
    Ответ написан
    Комментировать