channels.scala

来自「JAVA 语言的函数式编程扩展」· SCALA 代码 · 共 33 行

SCALA
33
字号
package examples.actorsimport scala.actors._import scala.actors.Actor._object channels extends Application {  case class Msg(ch1: Channel[Int], ch2: Channel[String])  val a = actor {    val Ch1 = new Channel[Int]    val Ch2 = new Channel[String]    b ! Msg(Ch1, Ch2)    val ICh1 = Ch1.asInstanceOf[InputChannel[Int]]    val ICh2 = Ch2.asInstanceOf[InputChannel[String]]    react {      case ICh1 ! (x: Int) =>        val r = x + 21        println("result: "+r)      case ICh2 ! y =>        println("received: "+y)    }  }  val b = actor {    react {      case Msg(ch1, ch2) => ch1 ! 21    }  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?