新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python3線程中submit方法如何使用?
線程池里常駐嘉賓,就是submit方法,也是我們今天文章的主題,他經(jīng)常被調(diào)用使用的原因之一即是需要到任務(wù)池里,獲取內(nèi)容并返回的,相信看到這里,也理解了開頭小編跟大家說的為什么是常駐嘉賓的原因了吧,任何程序運行,總歸都是需要有結(jié)果,作為結(jié)果的牽引線,自然是要經(jīng)常調(diào)用的,那就一起來看下怎么用吧~

首先大家可以看一組案例,這是一個錯誤的堆棧,我們看下要用submit方法怎么輸出內(nèi)容。
代碼演示:
ExecutorService service = Executors.newFixedThreadPool(1); Runnable r = () -> System.out.println(1 / 0); Future f = service.submit(r); f.get(); service.shutdown();
使用submit 方式的解決方法
Exception in thread "main" java.util.concurrent.ExecutionException: java.lang.ArithmeticException: / by zero at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at com.github.xjjdog.pool.AAA.main(AAA.java:20) Caused by: java.lang.ArithmeticException: / by zero at com.github.xjjdog.pool.AAA.lambda$main$0(AAA.java:16) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)
我們都知道,F(xiàn)uture在我們的線程池中使用并不頻繁,其主要原因之一,就是容易我們的請求,因此如果在碰到因為這個內(nèi)容,造成影響,不必過分擔(dān)憂,只要學(xué)會了submit 方式很容易得到解決。
當(dāng)前標(biāo)題:創(chuàng)新互聯(lián)Python教程:python3線程中submit方法如何使用?
本文地址:http://m.5511xx.com/article/cogdjjo.html


咨詢
建站咨詢
