未来的 Scala 怎么做?
How to do Future Scala?
我不明白为什么 Future 不起作用?有人能帮我吗?我从官方 scala 网站获得了这段代码。它没有编译错误 Future.type 没有接受参数
import scala.concurrent.Future
import java.lang.Thread.sleep
object Future extends App {
def getStockPrice(stockSymbol: String): Future[Double] = Future {
val r = scala.util.Random
val randomSleepTime = r.nextInt(3000)
val randomPrice = r.nextDouble * 1000
sleep(randomSleepTime)
randomPrice
}
}
将对象名称从 Future
更改为其他名称。您还需要一个隐含的 ExecutionContext
可用。以下将起作用。
import scala.concurrent.Future
import java.lang.Thread.sleep
import scala.concurrent.ExecutionContext.Implicits.global
object FutureApp extends App {
def getStockPrice(stockSymbol: String): Future[Double] = Future {
val r = scala.util.Random
val randomSleepTime = r.nextInt(3000)
val randomPrice = r.nextDouble * 1000
sleep(randomSleepTime)
randomPrice
}
}
我不明白为什么 Future 不起作用?有人能帮我吗?我从官方 scala 网站获得了这段代码。它没有编译错误 Future.type 没有接受参数
import scala.concurrent.Future
import java.lang.Thread.sleep
object Future extends App {
def getStockPrice(stockSymbol: String): Future[Double] = Future {
val r = scala.util.Random
val randomSleepTime = r.nextInt(3000)
val randomPrice = r.nextDouble * 1000
sleep(randomSleepTime)
randomPrice
}
}
将对象名称从 Future
更改为其他名称。您还需要一个隐含的 ExecutionContext
可用。以下将起作用。
import scala.concurrent.Future
import java.lang.Thread.sleep
import scala.concurrent.ExecutionContext.Implicits.global
object FutureApp extends App {
def getStockPrice(stockSymbol: String): Future[Double] = Future {
val r = scala.util.Random
val randomSleepTime = r.nextInt(3000)
val randomPrice = r.nextDouble * 1000
sleep(randomSleepTime)
randomPrice
}
}