一、关于死锁。死锁,就是当多个进程或者线程在执行的过程中,因争夺共享资源而造成的一种互相等待的现象,一旦产生了死锁,不加人工处理,程序会一直等待下去,这也被称为死锁进程。下面是一个产生“死锁”现象的例子:importthreadingimporttimelock_a=threading.Lock()lock_..
分类:
编程语言 时间:
2017-05-14 10:46:57
阅读次数:
254
Redisson分布式锁之前的基于注解的锁有一种锁是基本redis的分布式锁,锁的实现我是基于redisson组件提供的RLock,这篇来看看redisson是如何实现锁的。不同版本实现锁的机制并不相同引用的redisson最近发布的版本3.2.3,不同的版本可能实现锁的机制并不相同,早期版本好像是采用..
分类:
其他好文 时间:
2017-05-11 22:34:32
阅读次数:
343
转载自 https://gist.github.com/aras-p/6224951 原作者 Aras P 是 Unity 的 Graphics Architect // 关键词替换,出了 bug 很难检测!#define struct union#define if while#define el ...
分类:
Web程序 时间:
2017-04-23 12:40:18
阅读次数:
278
线程 import threading 锁 lock=threading.Lock() #lock=threading.RLock() #递归锁,多层锁定,多层解锁lock.acquire()lock.release() import threading import time v = 10 #lo ...
分类:
编程语言 时间:
2017-04-16 18:04:20
阅读次数:
204
本节内容 操作系统发展史介绍 进程、与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queue队列 开发一个线程池 进程 语法 进程间通讯 进程池 操作系统发展史 手工操作 ...
分类:
编程语言 时间:
2017-04-15 19:04:32
阅读次数:
541
单例模式(Singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点。 通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实例。这个类可以保证没有其他实例可以被创建,并且它可以提供一个访问该实例的方法。 为了帮助大 ...
分类:
Web程序 时间:
2017-03-27 16:27:45
阅读次数:
225
线程进程介绍 IO密集型:线程 计算密集型:进程 4. GIL,全局解释器锁。 保证同一个进程中只有一个线程同时被调度 线程 1. 基本使用 2. 锁 1. 只能有一个人使用锁 # lock = threading.Lock() # 只能开一把 # lock = threading.RLock()# ...
分类:
编程语言 时间:
2017-03-21 12:38:18
阅读次数:
323
首先启动tomcat,然后在tomcat的tomcat-users.xml配置文件里写入: 然后在mvn的settings.xml里写入: 在pom.xml文件添加: <path>后面的路径不能和项目名称一样,否则报错 且必须添加: 不添加,则报错 下面是常用的命令: 命令 描述 tomcat7:d ...
分类:
其他好文 时间:
2017-03-17 00:32:13
阅读次数:
213
1 import threading 2 import time 3 globals_num = 0 4 lock = threading.RLock() 5 def func(): 6 lock.acquire()#获得锁 7 global globals_num 8 globals_num +=... ...
分类:
编程语言 时间:
2017-02-25 21:44:42
阅读次数:
199
#include "stdafx.h" #include int g_count; const int ThreadNum = 10; DWORD __stdcall Func(LPVOID pm) { Sleep(10); g_count++; //InterlockedIncrement((LP... ...
分类:
编程语言 时间:
2017-01-01 18:57:43
阅读次数:
195