×

兹马思-数学第一资源

scalaactors:统一基于线程和基于事件的编程。(英语) Zbl 1162.68396
摘要:消息传递并发性和虚拟机(如JVM)之间存在阻抗不匹配。vm通常将它们的线程映射到重量级的OS进程。如果没有轻量级的流程抽象,用户常常被迫以事件驱动的方式编写并发应用程序的一部分,这会模糊控制流,并增加程序员的负担。
在本文中我们可以在基于单线程的抽象和基于事件的统一编程中展示。使用Scala编程语言的高级抽象机制,我们在未修改的jvm上实现了我们的方法。我们的编程模型与底层虚拟机的线程模型很好地集成在一起。

理学硕士:
68N19 其他编程范例(面向对象、顺序、并发、自动等)
PDF格式 BibTeX公司 XML 引用
全文: 内政部 链接
参考文献:
[1] 阿迪亚,阿图尔;豪厄尔,乔恩;他们,马文;博洛斯基,威廉J。;《无需人工堆栈管理的协同任务管理》,第289-302页
[2] Agha,Gul A.,《参与者:分布式系统中并发计算的模型》(1986),麻省理工学院剑桥出版社
[3] 乔阿姆斯特朗,爱尔兰语-语言及其工业应用的调查,in:Proc。INAP,1996年10月,第16-18页
[4] 阿姆斯特朗,乔;维丁,罗伯特;维克斯特伦,克莱斯;Williams,Mike,Erlang并发编程(1996),Prentice Hall·Zbl 0869.68026
[5] 黑色,A。;卡尔森,M。;琼斯,M。;伯克茨。;《木材:实时嵌入式系统的编程语言》(2002)
[6] Blumofe,R.,Cilk:一个高效的多线程运行时系统,并行与分布式计算杂志,37,1,55-69,(1996)
[7] Jean-Pierre Briot,Actalk:Smalltalk-80环境中用于分类和设计演员语言的试验台,in:Proc。ECOOP,1989年,第109-129页
[8] 卡罗梅尔,D。;德尔贝,C。;迪科斯坦佐,A。;Leyton,M.,Proactive:在网格和P2P系统上编程和运行应用程序的集成平台,科学技术计算方法,12,1,69-77,(2006)
[9] 卡罗梅尔,丹尼斯;卢多维奇亨利奥;周伯纳.保罗.异步与确定性对象,(),第123-134页·Zbl 1325.68052
[10] 钱,布莱恩;《应答者:交互应用的语言支持》,第255-278页
[11] 克莱森,科恩,一个穷人的并发单子,函数编程杂志,9,3,313-323,(1999)·Zbl 0948.68022
[12] Eric Cooper,Gregory Morrisett,向标准ML添加线程,报告CMU-CS-90-186,卡内基梅隆大学,1990年12月
[13] 坎宁安,瑞安;科勒,埃迪,用鳗鱼让事情变得不那么滑,()
[14] 范卡特森,汤姆;迪迪克,杰西;莫斯汀克斯,斯蒂恩;冈萨雷斯·博伊克斯,Elisa;D'Hondt,西奥;《环境参考:移动网络中的寻址对象》,第986-997页
[15] 范卡特森,汤姆;莫斯汀克斯,斯蒂恩;德默特,沃尔夫冈,《演员与线索的语言共生》,第222-248页
[16] 迪迪克,杰西;范卡特森,汤姆;莫斯汀克斯,斯蒂恩;D'Hondt,西奥;德默特,沃尔夫冈,《环境对话中面向环境的程序设计》,第页,230-254页
[17] 德拉维斯,理查德P。;伯沙德,布莱恩·N。;拉希德,理查德F。;Dean,Randall W.,使用延续来实现操作系统中的线程管理和通信,操作系统评论,25,5,122-136,(1991)
[18] Adam Dunkels,Björn Grönwall,Thiemo Voigt,Contiki-一种用于微型网络传感器的轻量级和灵活的操作系统,in:Proc。2004年第465页,第465页
[19] 埃米尔,伯克;奥德斯基,马丁;威廉姆斯,约翰,用图案匹配物体,(),273-298
[20] 菲尔德,约翰;《事务处理程序:在不可靠的环境中维护全局一致的分布式状态的编程模型》,第195-208页·Zbl 1369.68134号
[21] 伽马,E。;赫尔姆,右。;约翰逊,R。;Vlissides,J.,《设计模式》(1995年),Addison-Wesley
[22] Benoit Garbinato,Rachid Guerraoui,Jarle Hulaas,Maxime Monod,Jesper Spring,节俭移动对象,技术报告,EPFL,2005年
[23] 吉劳姆·热尔曼,马克·费利,斯特凡·蒙尼尔,《白蚁方案中面向并发的编程》,in:Proc。方案和功能规划研讨会,2006年9月
[24] 哈勒,菲利普;马丁欧德斯基,无控制反转的基于事件的程序设计,(),第4-22页·Zbl 1162.68396
[25] Tim Harris,Keir Fraser,《轻量级事务的语言支持》,in:Proc。OOPSLA,2003年,第388-402页
[26] 哈里斯,蒂姆;马洛,西蒙;佩顿琼斯,西蒙L。;何丽希,莫里斯,可组合记忆交易,(),第48-60页
[27] 海恩斯,克里斯托弗T。;Daniel P.Friedman,Engines build process Abstracts,第18-24页
[28] 卡尔·休伊特、彼得·毕肖普、理查德·施泰格,《人工智能的通用模块化演员形式主义》,载:IJCAI,1973年,第235-245页
[29] 劳尔,休·C。;李约瑟,罗杰M.,《操作系统结构的二元性》,操作系统评论,13,2,3-19,(1979)
[30] 李,道格,Java并发编程,(1996),艾迪生·韦斯利·Zbl 0888.68024
[31] 李,道格,Java fork/join框架,(),第36-43页
[32] 爱德华A李,线程的问题。加州大学伯克利分校2006年1月技术报告
[33] 李鹏;《结合事件和线程进行可伸缩网络服务的实现与评估一元应用级并发原语》,第189-199页
[34] 林德霍姆,T。;Yellin,F.,Java虚拟机规范(1996年),Addison Wesley
[35] 米勒,马克S。;特里布尔院长。;乔纳森夏皮罗,《陌生人之间的并发性——E语言中的规划协调》,195-229
[36] 尼斯特伦,J.H。;特里德,菲利普W。;王大卫.金.电信软件的分布式功能语言评估,(),第1-7页
[37] John Ousterhout,Why threads is A bad idea(Why threads is A bad idea(for most purposes)),应邀在USENIX演讲,1996年1月
[38] Vivek S.Pai,Peter Druschel,Willy Zwaenepoel,Flash:一个高效和可移植的Web服务器,in:Proc。USENIX,1999年6月,第199-212页
[39] 托马斯,D.A。;拉隆德,威斯康星州。;杜伊莫维奇,J。;威尔逊,M。;麦卡弗,J。;Berry,B.,Actra:A multitasking/multiprocessing smalltalk,ACM SIGPLAN notices,24,4,87-90,(1989年)
[40] 瓦雷拉,卡洛斯;《用SALSA编程动态可重构开放系统》,ACM-SIGPLAN通知,36,12,20-34,(2001)
[41] 罗伯特·冯·贝伦,J。;康迪特,杰里米;Eric A.Brewer著,Why events is A bad idea(Why events is A bad idea)(对于高并发服务器),第19-24页
[42] J、 罗伯特·冯·贝伦,杰里米·康迪特,周峰,乔治·C·内库拉,埃里克·A·布鲁尔,随想:互联网服务的可伸缩线程,in:Proc。SOSP,2003年,第268-281页
[43] Mitchell Wand,《基于连续的多处理》,in:LISP会议,1980年,第19-28页
[44] Matt Welsh,David E.Culler,Eric A.Brewer,《SEDA:一种条件良好、可扩展的互联网服务架构》,in:Proc。SOSP,2001年,第230-243页
[45] 阿基诺里·永泽一郎,让·皮埃尔·布里奥特,叶田真彦,面向对象的并发程序设计在ABCL/1中的应用,in:Proc。OOPSLA,1986年,第258-268页
[46] 基亚雷,卢卡斯;沙茨,菲利普;《稳定器:并发函数程序的模块化检查点抽象》,第136-147页
此参考列表基于出版商或数字数学图书馆提供的信息。它的项被试探性地匹配到zbMATH标识符,并且可能包含数据转换错误。它试图尽可能准确地反映原始论文中列出的参考文献,而不要求匹配的完整性或精确性。