社区
进程/线程/DLL
帖子详情
老是对多线程不感冒怎么办?
Dingnifei123
2010-11-11 03:15:57
看了《Windows核心编程》第6--12章,
但是老是硬着头皮看,其实看不怎么明白,
然后又看了《Win32多线程程序设计》,
当时感觉是明白了,但是好像没消化,还是不会做多线程程序,
到底该怎么学多线程编程,大家给点意见吧,你们都是怎么学的?
先谢谢啦。
...全文
386
17
打赏
收藏
老是对多线程不感冒怎么办?
看了《Windows核心编程》第6--12章, 但是老是硬着头皮看,其实看不怎么明白, 然后又看了《Win32多线程程序设计》, 当时感觉是明白了,但是好像没消化,还是不会做多线程程序, 到底该怎么学多线程编程,大家给点意见吧,你们都是怎么学的? 先谢谢啦。
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
尘小陌
2010-11-12
打赏
举报
回复
等到你用的着的时候,学起来就很快的
jacktion2004
2010-11-12
打赏
举报
回复
慢慢来,多用就自热而然的记得了
QQ282881515
2010-11-11
打赏
举报
回复
没想法就别去看《windows核心编程》,这玩意太枯燥-我感觉,当你激起兴趣时在去看,抓重点。
关于多线程 你得去经常没事玩线程,去玩起线程的函数,慢慢体会,调试 跟踪什么的 你必然会发现奇怪的东西,比如同个东西 两次结果不同。。。哈哈 自己去挖吧,别人给你说的 你看书的 是没很大帮助,得自己去敲代码。。。
孤客天涯
2010-11-11
打赏
举报
回复
多做些试验,多看实例
chenjiawei007
2010-11-11
打赏
举报
回复
边学边做才是IT的生财之道啊
Dingnifei123
2010-11-11
打赏
举报
回复
[Quote=引用 11 楼 xianglitian 的回复:]
当遇到实际问题需要用到多线程的时候你自然就能更深刻的理解了
举个例子
做一个基于winsocket的点对点聊天程序
采用阻塞模式accept客户端连接
如果不用多线程accept的时候程序就会挂起
采用多线程操作就会十分流畅
有兴趣的话可以试试
也没几行代码
[/Quote]
这个建议不错,顺便又可以学习socket编程,
谢谢。
向立天
2010-11-11
打赏
举报
回复
当遇到实际问题需要用到多线程的时候你自然就能更深刻的理解了
举个例子
做一个基于winsocket的点对点聊天程序
采用阻塞模式accept客户端连接
如果不用多线程accept的时候程序就会挂起
采用多线程操作就会十分流畅
有兴趣的话可以试试
也没几行代码
至善者善之敌
2010-11-11
打赏
举报
回复
多线程只要掌握好同步了,其实也没什么
Dingnifei123
2010-11-11
打赏
举报
回复
[Quote=引用 8 楼 s_pyd 的回复:]
等用到的时候就会觉得有用了 没用到的时候是不会提起兴趣的
[/Quote]
这倒是,
但是往往书到用时方很少,
半刻沙漏
2010-11-11
打赏
举报
回复
等用到的时候就会觉得有用了 没用到的时候是不会提起兴趣的
Dingnifei123
2010-11-11
打赏
举报
回复
是学用SDK还是学MFC?
rendao0563
2010-11-11
打赏
举报
回复
用自己的行为来解释给你听.
其实一个人就相当于一个在运行计算机.
假如你起了一个 给一大堆鸡蛋分类 的任务,
并且你的左手 和 右手 可以一起工作. 这就相当于2个线程.
而当你速度过快 出现两只手同时拿起了某一个鸡蛋 问题就出现了. 但是生活中你却很少碰到这种问题. 原因是你
是你意识到了. 所以你大脑会控制等先动的那只手动完, 再使用另外一只手. 这其实就是多线程中的锁的概念.
等待前面的人释放大家都在共用的资源.
左手的流程
do
{
锁定
左手操作
解除锁定
)while(工作未停止);
右手的流程
do
{
锁定
右手操作
解除锁定
)while(工作未停止);
上面是正常的流程. 假如你某个时候大脑出问题了. 左手操作完. 忘记解除锁定了. 会产生上面结果?
右手会一直等待左手的操作解除. 而左手也会进入等待操作解除流程. 这样就出现了死锁.
自己多思考思考. 计算机所有配件几乎都跟人体各个器官功能类似. 所以那个啥啥啥的也没啥了不起. 他其实
只是综合了这个世界物体的规则而已.
人死了可能是关机, 也有可能是重启(诈尸) 哈哈
ouyh12345
2010-11-11
打赏
举报
回复
多做些试验
沙鹰
2010-11-11
打赏
举报
回复
俺也不熟,有时间就写个程序,开几个线程,倒腾那些互斥啥的
hdxu8511
2010-11-11
打赏
举报
回复
不懂 帮你顶顶
Eleven
2010-11-11
打赏
举报
回复
慢慢来,多用就自热而然的记得了
bragi523
2010-11-11
打赏
举报
回复
写工程试验
我为什么对 PHP yield 协程和 swoole 不
感冒
?
离开需求场景谈技术是无意义的。PHP 最大的优势在于快速开发,劣势在于效率和工程规范。协程、异步这些技术相对学习成本高,优势在于性能提升明显。这跟 PHP 语言本身的优势形成悖论。 快速的实现一个需求是 PHP 开发者面临的首要问题,在业务量成长大足够大之前性能问题是次要的。 PHP 的协程和异步实现的太不优雅。有兴趣研究协程的人必然会去...
BGE-Large-Zh惊艳演示:中文长尾查询(如「治疗风寒
感冒
的中成药有哪些」)精准召回
本文介绍了如何在星图GPU平台自动化部署BGE-Large-Zh语义向量化工具,实现中文长尾查询的精准语义检索。该工具能将复杂中文查询(如「治疗风寒
感冒
的中成药有哪些」)转换为语义向量,快速匹配相关知识库内容,广泛应用于智能问答、企业知识检索等场景,提升中文信息处理效率。
Java基础复习—【9】—
多线程
、异常
异常、线程 主要内容 异常、线程 教学目标 能够辨别程序中异常和错误的区别 说出异常的分类 说出虚拟机处理异常的方式 列举出常见的三个运行期异常 能够使用try…catch关键字处理异常 能够使用throws关键字处理异常 能够自定义异常类 能够处理自定义异常类 说出进程的概念 说出线程的概念 能够理解并发与并行的区别 能够开启新线程 第一章 异常 1.1 异常概念 异常,就是不正常的意思。在生活中:医生说,你的身体某个部位有异常,该部位和正常相比有点不同,该部位的功能
七、异常与
多线程
new Thread(()->System.out.println(Thread.currentThread().getName()+" 新线程创建了")).start();System.out.println(Thread.currentThread().getName()+"-->正在卖第"+ticket+"张票");System.out.println(Thread.currentThread().getName()+"-->正在卖第"+ticket+"张票");
java
多线程
网_Java
多线程
电脑中真正执行的都是线程但是我们看到的都是进程进程:是由一个或者N个线程组成的线程:CPU调度和分配的基本单位
多线程
:在同一个进程中,同时(感觉)运行多个线程,来完成不同的工作!QQ中,我们可以开多个窗口跟不同的朋友聊天CPU能同时运行多个线程吗? 不能!一个CPU在同一个时间点,只能运行一个线程!但是电脑的运行速度太快,我们肉眼无法分辨,我们感觉是在同一时间点执行的!生活中的场景:场景1: 现...
进程/线程/DLL
15,465
社区成员
49,169
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章