基本概念: Producer:消息生产者,负责生产消息,一般由业务系统负责生产消息。 Consumer:消息消费者,负责消费消息,一般是后台系统负责异步消费。 Push Consumer:Consumer的一种,应用通常向Consumer对象注册一个Listener接口,一旦收到消息,Consume ...
分类:
其他好文 时间:
2018-01-01 23:33:48
阅读次数:
279
Lock锁 锁是用来控制多个线程访问共享资源的方式。 一般来说一个锁可以防止多个线程同时访问共享资源(但有些锁可以允许多个线程访问共享资源,如读写锁)。 在Lock接口出现前,java使用synchronized关键字实现锁的功能,但是在javaSE5之后,并发包中提供了Lock接口(以及其实现类) ...
分类:
编程语言 时间:
2017-12-29 15:06:16
阅读次数:
219
1、书单: 核弹头推荐 C++必读书单 http://coredumper.cn/index.php/2017/05/21/c_plus_plus_booklist/ C++程序设计:原理与实践(基础篇)(原书第2版)(Programming: Principles and Practice Usi ...
分类:
编程语言 时间:
2017-12-26 15:18:59
阅读次数:
129
线程概述 操作系统支持同时运行多个任务,每个任务都是一个程序,每个运行中的程序就是一个进程。 当一个程序运行时,内部可能包含多个顺序执行流,每个顺序执行流就是一个线程。 1.线程和进程 进程是系统进行资源分配和调度的一个独立单位,一般而言,进程包括如下三个特征: 1、独立性:进程是系统中独立存在的实 ...
分类:
编程语言 时间:
2017-12-25 11:26:55
阅读次数:
141
1、线程安全 (1)如果有多个线程在同时运行,而这些线程可能会同时运行这段代码; (2)程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的; (3)代码演示: ①模拟票 ②测试类 ③运行结果: (4)上面程序出现了问题,错误的票0、-1; (5)其实,线 ...
分类:
编程语言 时间:
2017-12-25 00:41:32
阅读次数:
127
一. 除了interrupt方法,还有其他方法, 我们要介绍线程类中常见的一些方法,比如说setDaemon, 还是结合之前的例子来讲解,t1和t2两个线程,我们中断了一个,另一个没有中断,那么DOS结果就结束不了。 可是如果在开启t2之前,将其设置成守护线程的话,守护听不懂,可以将它认为是后台线程 ...
分类:
编程语言 时间:
2017-12-24 16:50:22
阅读次数:
122
自定义线程的数据可以共享,也可以不共享,这要看具体的实现方式。 1.不共享数据多线程实现方式: 执行结果如下: 从结果上看,每个线程都是都是先打印3,再打印2,然后是1,0。由此可知各个线程都有一份变量count,不受其他线程的干扰。 2. 共享数据的多线程实现方式 执行结果如下: 由结果可知,A, ...
分类:
编程语言 时间:
2017-12-24 15:49:56
阅读次数:
336
mac同样适用 调用shell脚本,判断是否正常执行,如果正常结束,Process的waitFor()方法返回0 更多资料: http://www.cnblogs.com/shihaiming/p/5884859.html http://www.jb51.net/article/69930.htm ...
分类:
编程语言 时间:
2017-12-21 21:41:16
阅读次数:
168
1、倒计时器CountDownLatch CountDownLatch是一个多线程控制工具类。通常用来控制线程等待,它可以让一个线程一直等待知道计时结束才开始执行 构造函数: public CountDownLatch(int count) //count 计数个数 例如:在主线程中启动10个子线程 ...
分类:
编程语言 时间:
2017-12-19 15:10:50
阅读次数:
187
IRule 负载均衡器用来选择服务器的规则。 通过BaseLoadBalancer的setRule或构造函数来为BaseLoadBalancer添加IRule ribbon提供了部分路由规则。 RandomRule 生成一个随机数,从负载均衡器中选取一个服务器。 RoundRobinRule 轮询从 ...
分类:
编程语言 时间:
2017-12-19 01:21:23
阅读次数:
216