6、基于事件的多线程Java结构化操作语义

基于事件的多线程Java结构化操作语义

1. 引言

Java作为一种面向对象的编程语言,提供了简单且紧密集成的并发编程支持。在Java的并发模型中,多个线程控制运行在并行,并通过操作驻留在共享主内存中的对象来进行信息交换。这种模型的精确非正式描述在Java语言规范中给出。本文提出了Java的一个重要子语言的正式语义,包括线程的运行和停止、通过共享内存进行线程交互、通过监控和通知进行同步,以及顺序控制机制,如异常处理和返回语句。在这里,我们专注于Java的动态语义,并将对语言的静态、类型相关方面的详细处理,例如类声明,留给后续的论文。

2. 事件空间的概念

事件空间(event space)记录了计算的“历史”信息,这些信息根据语言规范限制了某些操作的执行,因此也限制了某些操作规则的适用性(见第3.4节)。给定两个事件空间(X,≤X)和(Y,≤Y),我们说(X,≤X)是(Y,≤Y)的一个保守扩展(conservative extension),当且仅当Y⊆X和≤Y⊆≤X,并且对于所有的a, b∈Y, a≤X b意味着a≤Y b。

2.1 事件空间的扩展

一个新的事件a附加到一个事件空间η=(X,≤X),我们使用如下定义的操作⊕:

graph TD
    A[事件空间 η=(X,≤X)] --> B[事件空间 η'=(Y,≤Y)]
    B --> C[保守扩展]
    C --> D[a'=α'(θ)由θ在η'中]
    C --> E[a'=β'(x)在η'中]
  • η′
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值