摘要:
一、线程体函数开启了事件循环,线程如何正常结束 1、QThread::exec()使得线程进入事件循环 (1)、事件循环结束前,exec()后的语句无法执行 (2)、quit()和exit()函数用于结束事件循环 (3)、quit() < >exit(0),exec()的返回值由exit()参数决定 阅读全文
摘要:
一、对象的依附性 1、对象依附于哪个线程? (1)、默认情况下,对象依附于自身被创建的线程(如对象在主线程main()函数)中被创建,则依附于主线程) 2、对象的依附性与槽函数执行的关系? (1)、默认情况下,槽函数在对象所依附的线程中调用执行 3、对象的依附性是否可以改变? (1)、QObject 阅读全文
摘要:
一、多线程中的信号与槽 1、QThread类拥有发射信号和定义槽函数的能力(因为QThread继承自QObject) (1)、关键信号 A、void start():线程开始运行时发射该信号 B、void finished():线程完成运行时发射该信号 C、void terminated():线程被 阅读全文
摘要:
思路: (1)、刚开始时隐藏进度条 (2)、按下下载按钮后,首先取得URL,用来创建文件,并且构造请求 (3)、发送请求,连接信号与槽(槽是准备读数据、更新进度条、相应结束的槽) (4)、读取相应信息并且写入文件 (5)、重新隐藏进度条,关闭文件,删除应答等 #ifndef MAINWINDOW_H 阅读全文
摘要:
一、 HTTP 的消息结构 一、 HTTP 的消息结构 一、 HTTP 的消息结构 1、Request (1)、请求行:Request 消息中的第一行,由请求方式、请求URL、HTTP协议及版本三部分组成 (2)、请求头:其中 Content-Type 指定了客户端发送的内容格式。例如:Conten 阅读全文
摘要:
恢复内容开始 一、银行家算法 1、问题描述 (1)、研究银行家如何将总数 一定的资金,安全 地借给若干个顾客,使顾客既能满足对资金的需求, 也使银行家可以收回自己的全部资金,不至于破产 2、以下限制条件 (1)、每个顾客在借款前必须提前说明所需资金总额 (2)、每次借钱都是以一个单位进行(如,一个单 阅读全文
摘要:
一、多线程间的互斥 1、程序的临界资源与线程锁的数量关系 (1)、一般性原则:每一个临界资源都需要一个线程锁进行保护 2、死锁的概念 (1)、线程间相互等待资源而造成彼此无法继承执行 3、发生死锁的条件 (1)、系统中存在多个临界资源且临界资源不可抢占(每次只有一个线程使用) (2)、线程需要多个临 阅读全文
摘要:
一、多线程间的互斥 1、生产消费者问题 (1)、有n个生产者同时制造产品,并把产品放入仓库中 (2)、有m个消费者同时从仓库中取出产品 (3)、规则 A、当仓库未满,任意生产者可以存入产品 B、当仓库未空,任意消费者可以取出产品 2、生活中的线程互斥例子 标示牌用于指示是否可用: 红绿灯标识十字路口 阅读全文
摘要:
一、多线程间的同步 1、多线程编程的本质 (1)、并发性是多线程编程的本质 (2)、在宏观上,所有线程并行执行 (3)、多个线程间相互独立,互不干涉 2、特殊情况下,多线程存在依赖 煮菜和煮饭这两个线程结束后,才能进行吃饭的线程 3、同步的概念 (1)、在特殊情况下,控制多线程间的相对执行顺序 (2 阅读全文
摘要:
一、Qt中的多线程编程 1、Qt通过QThread直接支持多线程 (1)、QThread是一个跨平台的多线程解决方案 (2)、QThread以简洁易用的方式实现多线程编程 (3)、注意 A、Qt中的线程以对象的形式被创建和使用 B、每一个线程对应着一个QThread对象 2、QThread中的关键成 阅读全文