一、线程安全 1. 怎样让多线程下的类安全起来 无状态、加锁、让类不可变、栈封闭、安全的发布对象 2. 死锁 2.1 死锁概念及解决死锁的原则 一定发生在多个线程争夺多个资源里的情况下,发生的原因是每个线程拿到了某个(某些)资源不释放,同时等待着其他线程所持有的资源。 解决死锁的原则就是确保正确的获 ...
分类:
编程语言 时间:
2018-05-01 14:01:56
阅读次数:
157
一 .概述 死锁是一种状态: 多个线程争夺多个锁,如果控制不当,每个线程都获得一部分锁而无法获取所有的全部的锁,此时就会发生死锁. 在一般状态下,死锁在没有外界的干预下会一直陷入到等待当中,也就是说,程序根本无法运行下去. 二 . 死锁 死锁的状态是我们不想看见的,但是当我们遇到的时候我们需要进行诊 ...
分类:
其他好文 时间:
2018-04-29 15:24:15
阅读次数:
179
摘录python核心编程 一般的,多线程代码中,总有一些特定的函数或者代码块不希望(或不应该)被多个线程同时执行(比如两个线程运行的顺序发生变化,就可能造成代码的执行轨迹或者行为不相同,或者产生不一致的数据),比如修改数据库、更新文件或其他会产生竞态条件的类似情况。此时就需要同步了。 同步:任意数量 ...
分类:
编程语言 时间:
2018-04-18 21:22:11
阅读次数:
290
? 明确、透明的组织架构 明确的组织架构很重要,这样可以大幅度的避免权力交叉争夺,太多的人力消耗就是消耗在了权力斗争当中,不要试图去使用“帝王学”,那只会让你的团队人员随时处于相互斗争中,从而消耗工作能力。 我认为以下任何一种错误的组织架构都有可能造成人力资源浪费: · 任务交叉负责:可能造成完 成 ...
分类:
其他好文 时间:
2018-04-16 14:41:48
阅读次数:
151
1.1什么是进程? 狭义定义:进程就是一段程序的执行过程。 广义定义:进程是一个具有一定独立功能的程序,关于某个数据集合的一次运行活动。它是操作系统动态执行 的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 1.1.1 进城和程序的区别 程序:计算机指令的集合,它以文件的 ...
分类:
编程语言 时间:
2018-04-10 19:40:29
阅读次数:
225
随着移动互联网的普及,现在手机微信应用也越来越被依赖,说到微信那就不得不说其中的一项互动功能-“微信运动”。他不仅可以记录你当天的运动量,还可以与好友来一场“激烈”的PK以争夺唯一的运动封面展示权,但是问题又来了,如果我们每天上班没办法也没时间走那么多步数,难道我们就只能被沦为loser了吗? 答案 ...
分类:
微信 时间:
2018-04-02 20:20:58
阅读次数:
13485
1 通信方式对比 同步和互斥: (1)临界资源:对多个进程或线程均可见(也即均可操作),会产生被争夺的资源;如共享资料。 (2)临界区:操作临界资源的代码段。 (3)同步:是一种制约关系,为完成某种任务多个进程协调次序等待,传递消息,完成工作,这种关系源于进程间的合作;基于接口本身的一种特性,也就是 ...
分类:
编程语言 时间:
2018-03-30 01:11:23
阅读次数:
290
洛谷 P2299 Mzc和体委的争夺战 题目背景 mzc与djn第四弹。 题目描述 mzc家很有钱(开玩笑),他家有n个男家丁(做过前三弹的都知道)。但如此之多的男家丁吸引来了我们的体委(矮胖小伙),他要来与mzc争夺男家丁。 mzc很生气,决定与其决斗,但cat的体力确实有些不稳定,所以他需要你来 ...
分类:
其他好文 时间:
2018-03-24 20:38:04
阅读次数:
126
以比特币为例,比特币矿机就是通过运行大量计算争夺记账权从而获得新生比特币奖励的专业设备,一般由挖矿芯片、散热片和风扇组成,只执行单一的计算程序,耗电量较大。 挖矿实际是矿工之间比拼算力,拥有较多算力的矿工挖到比特币的概率更大。随着全网算力上涨,用传统的设备(CPU、GPU)挖到比特的难度越来越大,人 ...
分类:
其他好文 时间:
2018-03-18 17:44:22
阅读次数:
169
原文:http://tlzl0526-gmail-com.iteye.com/blog/2378853 在一些高并发的场景中,比如秒杀,抢票,抢购这些场景,都存在对核心资源,商品库存的争夺,控制不好,库存数量可能被减少到负数,出现超卖的情况,或者 产生唯一的一个递增ID,由于web应用部署在多个机器 ...
分类:
其他好文 时间:
2018-03-09 18:58:34
阅读次数:
271