是不是通过channel.eventLoop().execute这样执行的时候InEventLoop这个一定为真?

来源:4-3 ThreadPerTaskThread

慕粉3520842

2018-06-30

RT

写回答

2回答

慕粉3520842

提问者

2018-06-30

	new Thread(new Runnable(){
			ExecutorService service = Executors.newCachedThreadPool();
			public void run() {
				System.out.println(Thread.currentThread().getName());
				service.submit(new Runnable(){
					public void run() {
						System.out.println("-----"+Thread.currentThread().getName());
					}});
				
			}
			
		}).start();

老师,eventloop也是一个线程池把,我用java的线程池写了个demo 打印结果是 Thread-0 -----pool-1-thread-1 上面您这种执行一个task也是evenloop连接池中执行,按照来说 打印Thread.currentThread也是类似-pool-1-thread-1吧 按照我想的

0
0

闪电侠

2018-06-30

new Thread(new Runnable() {
     @Override
     public void run() {
        channel.eventLoop().execute()
    }
}).start();

比如上面这种情况,就是外部线程在调用eventloop在执行任务哦,所以不一定为真

0
1
慕粉3520842
老师,eventloop也是一个线程池把,我用java的线程池写了个demo new Thread(new Runnable(){ ExecutorService service = Executors.newCachedThreadPool(); public void run() { System.out.println(Thread.currentThread().getName()); service.submit(new Runnable(){ public void run() { System.out.println("-----"+Thread.currentThread().getName()); }}); } }).start(); 打印结果是 Thread-0 -----pool-1-thread-1 上面您这种执行一个task也是evenloop连接池中执行,按照来说 打印Thread.currentThread也是类似-pool-1-thread-1吧 按照我想的
2018-06-30
共1条回复

Java读源码之Netty深入剖析

解析netty各大组件细节,百万级性能调优,设计模式实际运用

2334 学习 · 283 问题

查看课程