scala 多线程actor
来源:互联网 发布:优衣库淘宝假货 编辑:程序博客网 时间:2024/05/21 17:36
java--thread:共享全局变量的加锁机制,不可避免造成死锁scala--actor在做分布式的时候一定不要有共享全局的变量,更不能做加锁机制。每个actor都和公司的一个员工一样,都有自己的循环器,每天循环自己的邮箱查看邮件,回复邮件作出应答。!:异步的,给actor发完信息后不会继续等回答,会继续往下执行!?:给actor发完信息后会等对方回答,没有回答就一直等待hung住!!:发送完之后,同时希望能够得到结果scala> import scala.actors.Actorimport scala.actors.Actorscala> class HiActor extends Actor{ --相当于Thread | def act(){ --相当于run | while(true){ | receive{ | case name: String => println(name) | } | } | } | }defined class HiActorscala>scala> val actor = new HiActoractor: HiActor = HiActor@75d29995scala> actor.start() res20: scala.actors.Actor = HiActor@75d29995scala> actor ! "Spark" --给actor发送信息:"Spark"scala> Sparkscala> actor ! "Scala"Scala-------------------------------------------scala> case class Basic(name: String,age: Int)defined class Basicscala> case class Worker(name: String,age: Int)defined class Workerscala> class BasicActor extends Actor{ | def act(){ | while(true){ | receive{ | case Basic(name,age) => println("Basic Info:" + name + ":" + age) | case Worker(name,age) => println("Worker Info:" + name + ":" + age) | } | } | } | }defined class BasicActorscala> val b = new BasicActorb: BasicActor = BasicActor@43aad2f4scala> b.startres23: scala.actors.Actor = BasicActor@43aad2f4scala> b ! Basic("Scala",13)Basic Info:Scala:13scala> b ! Worker("Spark",7)Worker Info:Spark:7scala> val a = b !! Worker("Spark",7) --!!:发送完之后,同时希望能够得到结果a: b.Future[Any] = <function0>scala> Worker Info:Spark:7scala> b !? Worker("Spark",7) --一直在等待Worker Info:Spark:7
0 0
- scala 多线程actor
- Scala Actor:多线程的基础学习
- scala actor
- scala Actor
- Scala actor
- Scala的线程actor
- Scala actor的使用
- scala 简要: Actor
- scala Actor 初探
- Scala Actor并发编程
- scala(8)Actor
- Scala Actor通信
- scala actor异步
- Scala Actor并发编程
- Scala入门之Actor
- Scala之Actor
- scala之actor编程
- scala中的actor
- java责任链模式
- 91. 文件系统 code.bupt.edu.cn 题干问题
- utf8 编码显示乱码
- RGB<---->YUV转换
- Android项目及编码规则
- scala 多线程actor
- react-router2.0 web 使用
- Java中只有按值传递,没有按引用传递!
- 发送邮件网页样式乱了。
- Android带Cookie的Http请求
- 饿了么移动APP的架构演进
- Hbase rowkey 热点问题
- java中8种基本类型及运行转换
- MyEclipse使用总结——MyEclipse10安装SVN插件