真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

scala中如何使用多線程

這篇文章將為大家詳細(xì)講解有關(guān)scala中如何使用多線程,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

目前創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護(hù)、企業(yè)網(wǎng)站設(shè)計(jì)、蓬溪網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長(zhǎng),共同發(fā)展。

寫的一個(gè)scala多線程的小demo,以備后用

Runnable/Callable

區(qū)別:Runnable無返回值,Callable線程執(zhí)行完有返回值

Runnable示例

import java.util.concurrent.{Executors, ExecutorService}

object Test {
  def main(args: Array[String]) {
    //創(chuàng)建線程池
    val threadPool:ExecutorService=Executors.newFixedThreadPool(5)
    try {
      //提交5個(gè)線程
      for(i <- 1 to 5){
        //threadPool.submit(new ThreadDemo("thread"+i))
        threadPool.execute(new ThreadDemo("thread"+i))
      }
    }finally {
      threadPool.shutdown()
    }
  }

  //定義線程類,每打印一次睡眠100毫秒
  class ThreadDemo(threadName:String) extends Runnable{
    override def run(){
      for(i <- 1 to 10){
        println(threadName+"|"+i)
        Thread.sleep(100)
      }
    }
  }
}

Callable示例

import java.util.concurrent.{Callable, FutureTask, Executors, ExecutorService}

object Test {
  def main(args: Array[String]) {
    val threadPool:ExecutorService=Executors.newFixedThreadPool(3)
    try {
      val future=new FutureTask[String](new Callable[String] {
        override def call(): String = {
          Thread.sleep(100)
          return "im result"
        }
      })
      threadPool.execute(future)
      println(future.get())
    }finally {
      threadPool.shutdown()
    }
  }
}

關(guān)于scala中如何使用多線程就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


標(biāo)題名稱:scala中如何使用多線程
分享鏈接:http://weahome.cn/article/psgspo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部