相信大家会经常听到线程或者进程两个概念,我们先来看看进程 什么是进程?进程,顾名思义就是正在进行中的程序,也可以说是正在运行的程序. ctrl+alt+delete三个键一起按,看windows任务管理器(其实某个程序死机时常通过这种方式关闭程序)我们可以看到下图: 你可以发现你的电脑同时运行多个进 ...
分类:
编程语言 时间:
2016-11-14 22:27:55
阅读次数:
254
今天讨论一个问题,一同事说一个进程内线程的所有资源都能被彼此共享,我说线程私有堆栈空间不可以,为此争论了几句。今天加班用网上资源重新学习了下,以备以后查看 在多线程环境下,每个线程拥有一个栈和一个程序计数器。栈和程序计数器用来保存线程的执行历史和线程的执行状态,是线程私有的资源。其他的资源(比如堆、 ...
分类:
编程语言 时间:
2016-11-14 20:16:21
阅读次数:
216
多线程编程主要是为了解决处理慢的问题。 使用多个线程进行并发处理资源,使用的模型最多的还是生产者消费者模型。 目前我遇到的问题或者体会主要有两个: 1.生产者产生速度不能大于消费者的速度,否则总有一天内存会被撑爆。 有合理的调度,能让消费者及时处理数据。 2.生产者生产过程中不能产生重复数据,类似循 ...
分类:
编程语言 时间:
2016-11-14 17:11:45
阅读次数:
201
最简单的实现 但是在多线程的情况下有问题,继续改进 存在问题:通过增加synchronized关键字。但是同步会降低性能 解决方案: 1。如果getInstance()的性能对应用程序不是很关键,就什么都别做。 如果你的应用程序可以接受getInstance()造成的额外负担,就忘了这件事吧。同步如 ...
分类:
其他好文 时间:
2016-11-14 15:30:33
阅读次数:
130
林炳文Evankaka原创作品。转载请注明出处http://blog.csdn.net/evankaka 写在前面的话:此文只能说是Java多线程的一个入门,其实Java里头线程完全可以写一本书了,但是如果最基本的你都学掌握好,又怎么能更上一个台阶呢?如果你觉得此文很简单,那推荐你看看Java并发包 ...
分类:
编程语言 时间:
2016-11-14 12:52:34
阅读次数:
229
最简单的方法(不推荐): 在窗体构造函数中写Control.CheckForIllegalCrossThreadCalls =false; 为什么不推荐上面的方法: 为避免空间造成死锁, .net framework 2.0 之后 拒绝多线程访问空间, 以前Control.CheckForIlleg ...
分类:
编程语言 时间:
2016-11-14 12:00:30
阅读次数:
213
热点随笔: · 100行代码实现了多线程,批量写入,文件分块的日志方法(Sam Xiao)· 毕业七年,谁自迷茫!(浴子风)· 一些关于界面设计的技巧(牧云云)· 上一家公司倒闭,为什么我又来了创业公司?(腾飞(Jesse))· 使用浏览器的计算力,对抗密码破解(EtherDream)· 我所理解的 ...
分类:
其他好文 时间:
2016-11-14 09:38:01
阅读次数:
222
关于多线程操作。 对于IO操作,如访问网站,写入磁盘这种需要时间等待响应的操作,多个cpu也几乎不能提高效率。 对于CPU密集型操作,如这个格式转换,可以通过多个cpu同时去进行。 但是对于python来讲,python存在GIL全局解释器的锁,导致只有一个python线程能被解释器接收。所以等于p ...
分类:
编程语言 时间:
2016-11-14 01:39:44
阅读次数:
215
发现问题 需求很简单,大致就是要批量往数据库写数据,于是打算用Parallel并行的方式写入,希望能利用计算机多核特性加快程序执行速度。想的很美好,于是快速撸了类似下面的一串代码: 可意外的是竟然无情的报错了: 奇葩的是当我再次刷新的时候异常又不一样了,于是连着刷新好多次,总结出现过的异常有下面这些 ...
分类:
数据库 时间:
2016-11-14 01:37:01
阅读次数:
260
实验报告:固件设计 小组成员 :20145306张文锦,20145334赵文豪,20145331魏澍琛 实验内容、步骤与体会 1、开发环境的配置同实验一 2、将实验代码拷贝到共享文件夹中 3、在虚拟机中编译代码 对于多线程相关的代码,编译时需要加-lpthread 的库 4、下载调试 在超级终端中运 ...
分类:
其他好文 时间:
2016-11-14 01:07:08
阅读次数:
174