• 手机版

    扫码体验手机版

  • 微信公众号

    扫码关注公众号

国内首家协议开发

软芯音视解码保护平台

在线
客服

发布
需求

在线
聊天

天盟
APP

天盟APP下载

关注
微信

微信扫一扫访问
顶部

调用同样的代码,执行的效果不同

private ThreadPoolExecutor threadpool;         private Runnable runnable;          public HelloThread(){             threadpool=new ThreadPoolExecutor(2, 10, 10, TimeUnit.SECONDS, new ArrayBlockingQueue(10),             new ThreadPoolExecutor.DiscardOldestPolicy());             threadpool.execute(new Runnable(){                       public void run(){                         try {                           Thread.sleep(1000);                         } catch (InterruptedException e) {                           e.printStackTrace();                         }                                           }                    });             }                     //add task into thread pool           public void submit(final int flag){                   runnable=new Runnable(){                       public void run(){                                 try {                                   Thread.sleep(1000);                                 } catch (InterruptedException e) {                                   e.printStackTrace();                                 }                                 System.out.println(flag + "   Hello");                               }                            };            threadpool.execute(runnable);               }                     /**         * close thread pool         */        public void shutdown() {                threadpool.remove(runnable);                threadpool.shutdown();        }        @Test        public void testThread(){                                HelloThread t = new HelloThread();                for (int i = 0; i < 10; i++) {                        System.out.println("time:" + i);                        t.submit(i);                }                t.shutdown();                                        }        public static void main(String[] args) {                HelloThread t = new HelloThread();                for (int i = 0; i < 10; i++) {                        System.out.println("time:" + i);                        t.submit(i);                }                t.shutdown();                                }        唯一不同是用main测试和testThread测试,输出的结果不同。
System.out.println(flag + "   Hello");  只有用main测试,才能输出

免责声明:本内容仅代表回答会员见解不代表天盟观点,请谨慎对待。

版权声明:作者保留权利,不代表天盟立场。

使用道具 举报

发新帖

发布任务需求已有1031165位用户正在使用天盟网服务

发布分类: *
任务预算: *
需求内容: *
手机号码: *
任务商家报价为
  • 预算价 :
  • 成交价 :
  • 完工期 :
  • 质保期 :

* 最终任务项目以服务商报价、双方协商为准!