spring+多线程小技巧
来源:互联网 发布:linux批量安装 编辑:程序博客网 时间:2024/05/17 23:12
package com.liyang.api;public interface Fang{void doWork(int t) ;}
package com.liyang.api.impl;import org.springframework.stereotype.Service;import com.liyang.api.Fang;@Servicepublic class A implements Fang , Runnable{@Overridepublic void doWork(int t) {System.out.println("A say..." + t) ;}@Overridepublic void run() {int t = 100 ;while(t-- > 0){doWork(t) ;Thread.yield() ; }}}
package com.liyang.api.impl;import org.springframework.stereotype.Service;import com.liyang.api.Fang;@Servicepublic class B implements Fang , Runnable{@Overridepublic void doWork(int t) {System.out.println("B say..." + t) ;}@Overridepublic void run() {int t = 100 ;while(t-- > 0){doWork(t) ;Thread.yield() ; }}}
package com.liyang.api.impl;import org.springframework.stereotype.Service;import com.liyang.api.Fang;@Servicepublic class C implements Fang , Runnable{@Overridepublic void doWork(int t) {System.out.println("C say..." + t) ;}@Overridepublic void run() {int t = 100 ;while(t-- > 0){doWork(t) ;Thread.yield() ; }}}
package com.liyang;import java.util.List;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import javax.annotation.PostConstruct;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;@Servicepublic class Main {@Autowiredprivate List<Runnable> fangApis ;@PostConstructvoid init(){ExecutorService executor = Executors.newCachedThreadPool() ;//ExecutorService executor = Executors.newSingleThreadExecutor() ;for(Runnable f : fangApis) executor.submit(f) ;executor.shutdown() ; }}
0 0
- spring+多线程小技巧
- [小技巧]winfrom使用多线程
- c++ 多线程调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- 多线程死锁调试小技巧
- spring配置文件的小技巧
- Hibernate+Spring配置的几个小技巧
- Spring配置XML12个小技巧
- Spring中事件处理的小技巧
- Spring中事件处理的小技巧
- Spring中事件处理的小技巧
- Spring中事件处理的小技巧
- Spring中事件处理de小技巧
- 图像滤镜处理算法:灰度、黑白、底片、浮雕 (转)
- S2SH开发环境搭建
- Centos 6上 安装 Mysql 5.7.13
- C++ 中的三种继承public , protected, private
- java - 接口回调讲解2 - 将接口视为工厂
- spring+多线程小技巧
- WCSessionUserInfoTransfer
- vim使用方法----拷贝和删除任意长度字符串
- Spark Streaming 中使用kafka低级api+zookeeper 保存 offset 并重用 以及 相关代码整合
- PHP使用Apache中的ab(ApacheBench)测试网站的并发量
- Android:关于Android Studio连接手机的各种问题 & 解决“通常每个套接字地址(协议/网络地址/端口)只允许使用一次(10048)”的问题。
- ESB 企业服务总线基本内容概述
- 进程和线程简述
- git深入学习