scala学习之:scala的并发编程(一)
2015-09-04 16:27
393 查看
代码实战详解了Java语言基于加锁的并发编程模型的弊端以及Scala语言中基于Actor的并发编程的机制。
java的并发理念:基于共享数据与加锁。以加锁的机制确保同一时间只有一个线程操作共享数据。
scala则是依赖与消息传输、消息传递的模式。不共享数据。
并发的简单操作:继承Actor,覆写act方法,以start方法调用。
代码示例:
import scala.actors.Actor
/** Actor的初了解
*/
object First_Actor extends Actor{
def act(){
for(i <- 1 to 10){
println(Thread.currentThread().getName+ " : " + i)
Thread.sleep(1000)
}
}
}
object Second_Actor extends Actor{
def act(){
for(i <- 1 to 10){
println(Thread.currentThread().getName+ " : " + i )
Thread.sleep(1000)
}
}
}
object Hello_Actor {
def main(args: Array[String]): Unit = {
First_Actor.start
Second_Actor.start
}
}
以上内容是从王家林老师DT大数据课程第66讲的学习笔记。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
百度云盘地址:http://pan.baidu.com/s/1pJ5jzHx
优酷播放地址:http://v.youku.com/v_show/id_XMTI5MTgwMDAxNg==.html
51cto的播放地址:http://edu.51cto.com/lesson/id-69615.html
java的并发理念:基于共享数据与加锁。以加锁的机制确保同一时间只有一个线程操作共享数据。
scala则是依赖与消息传输、消息传递的模式。不共享数据。
并发的简单操作:继承Actor,覆写act方法,以start方法调用。
代码示例:
import scala.actors.Actor
/** Actor的初了解
*/
object First_Actor extends Actor{
def act(){
for(i <- 1 to 10){
println(Thread.currentThread().getName+ " : " + i)
Thread.sleep(1000)
}
}
}
object Second_Actor extends Actor{
def act(){
for(i <- 1 to 10){
println(Thread.currentThread().getName+ " : " + i )
Thread.sleep(1000)
}
}
}
object Hello_Actor {
def main(args: Array[String]): Unit = {
First_Actor.start
Second_Actor.start
}
}
以上内容是从王家林老师DT大数据课程第66讲的学习笔记。
DT大数据微信公众账号:DT_Spark
王家林老师QQ:1740415547
王家林老师微信号:18610086859
百度云盘地址:http://pan.baidu.com/s/1pJ5jzHx
优酷播放地址:http://v.youku.com/v_show/id_XMTI5MTgwMDAxNg==.html
51cto的播放地址:http://edu.51cto.com/lesson/id-69615.html
相关文章推荐
- 线程心得
- python爬虫框架scrapy操作步骤
- C#并行编程 (Barrier,CountdownEvent,ManualResetEventSlim,SemaphoreSlim,SpinLock,SpinWait )
- php模拟数据库常用操作效果
- C++基础---虚析构函数与纯虚析构函数
- C++继承访问方式
- c++中sort()及qsort()的用法总结
- 关于python,数据挖掘,自然语言处理的一些学习资源
- django的get和filter方法的区别
- 树莓派折腾日记2-DLNA云服务器的架设
- Java判断两个时间段是否有交集
- C++基础---纯虚函数
- 集合心得
- Python List Merge for game 2048 (part1)
- java基础经典问题String str=new String("abc")和String str="abc"
- C语言排序实例(选择、冒泡、插入、折半、快速)
- C++基础---虚函数
- python中关于正则表达式
- Java中Runnable和Thread的区别
- CCF-最大的矩形-201312-3