![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
QT
文章平均质量分 77
学习qt的API
PinoLio
这个作者很懒,什么都没留下…
展开
-
QT 数据库的增加操作和画图 Win
创建了一个命名为data.qrc的文件,并在cmake中添加该文件。避免在包含Qsql库中出现不存在的情况。在CMakeLists.txt中添加。先创建resource file。原创 2024-02-21 21:15:00 · 578 阅读 · 0 评论 -
【Threads and QObjects,Thread-Support in Qt Modules】线程和QObjects,Qt模块中的线程支持
Threads 继承了 QObjects类。它发出信号来指示线程已开始执行或已完成执行,并提供一些槽函数。更有趣的是,QObjects可以在多个线程中使用,发出调用其他线程中槽的信号,并将事件发布到“live”在其他线程中的对象。这是可能的,因为每个线程都允许有自己的事件循环。原创 2023-12-05 21:00:00 · 1024 阅读 · 0 评论 -
【QT 之 Synchronizing Threads】 同步线程
虽然线程的目的是允许代码并行运行,但有时线程必须停止并等待其他线程。例如,如果两个线程试图同时写入同一个变量,结果是未定义的。强制线程相互等待的原理称为互斥。这是一种用于保护共享资源(如数据)的通用技术。Qt提供了用于同步线程的低级原语以及高级机制。原创 2023-12-05 20:15:00 · 342 阅读 · 0 评论 -
【Thread Support in Qt、Multithreading Technologies in Qt】
Qt以独立于平台的线程类、发布事件的线程安全方式以及跨线程的信号槽连接的形式提供线程支持。这使得开发可移植的多线程Qt应用程序变得容易,并利用多处理器机器。多线程编程对于执行耗时的操作而不冻结应用程序的用户界面也是一种有用的范例。原创 2023-12-05 20:30:00 · 865 阅读 · 0 评论 -
【QT之 QWaitCondition】
QWaitCondition类提供了一个用于同步线程的条件变量.原创 2023-12-01 22:00:00 · 897 阅读 · 0 评论 -
【QT之QMutexLocker】
是一个方便类,它简化了互斥锁的锁定和解锁。在复杂的函数和语句或异常处理代码中锁定和解锁QMutex容易出错,而且很难调试。QMutexLocker可以在这种情况下使用,以确保互斥对象的状态始终定义良好。应该在需要锁定QMutex的函数中创建。创建QMutexLocker时,互斥锁被锁定。您可以使用unlock()和relock()来解锁和重新锁定互斥对象。如果被锁定,那么当QMutexLocker被销毁时,互斥锁将被解锁。这个示例函数在开发过程中会变得更加复杂,这增加了发生错误的可能性。原创 2023-12-01 18:00:00 · 507 阅读 · 0 评论 -
【QT之QMutex QRecursiveMutex】互斥锁 递归锁
Mutex可以分为递归锁(recursive mutex)和非递归锁(non-recursive mutex)。可递归锁也可称为可重入锁(reentrant mutex),非递归锁又叫不可重入锁(non-reentrant mutex)。二者唯一的区别是,同一个线程可以多次获取同一个递归锁,不会产生死锁。而如果一个线程多次获取同一个非递归锁,则会产生死锁。原创 2023-11-30 18:45:00 · 2656 阅读 · 0 评论 -
【QT之Reentrancy and Thread safety】可重入性与线程安全
重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。可重入和线程安全用于标记类和函数,以指示如何在多线程应用程序中使用它们。线程安全函数可以从多个线程同时调用,即使调用使用共享数据也是如此,因为对共享数据的所有引用都是序列化的。也可以从多个线程同时调用可重入函数,但前提是每次调用都使用自己的数据。线程安全总是可重入的,可重入函数不一定是线程安全的。原创 2023-11-30 19:15:00 · 338 阅读 · 0 评论 -
【QT 之 QSemaphore】信号量
例如:信号量的一个非计算示例是在餐厅用餐。信号量是用餐厅里的椅子数量初始化的。当人们离开时,available()会增加,允许更多的人进入。如果一个10人的聚会想要就座,但只有9个座位,那10个人会等待,但一个4人的聚会会就座(将可用座位增加到5个,使10人的派对等待的时间更长)。信号量通常用于保护一定数量的相同资源。尝试获取n个资源,如果没有那么多可用资源,那么调用将被阻止,直到出现这种情况(可以获取到n个资源)。信号量的一个典型应用程序是控制对生产者线程和消费者线程共享的循环缓冲区的访问。原创 2023-11-30 19:00:00 · 851 阅读 · 0 评论