WEB开发网
开发学院软件开发Java 基于 Java 2 运行时安全模型的线程协作 阅读

基于 Java 2 运行时安全模型的线程协作

 2009-09-20 00:00:00 来源:WEB开发网   
核心提示: 在该模型中,有一个特殊的保护域,基于 Java 2 运行时安全模型的线程协作(3),系统域(System Domain),所有被 null类装载器所装载的类都被称为系统代码,使用LogService将其写入c:\\paper\\client\\out.tmp文件,Messagemessage=n

在该模型中,有一个特殊的保护域,系统域(System Domain)。所有被 null类装载器所装载的类都被称为系统代码,其自动拥有所有的权限。而且,所有的重要的受保护的外部资源,如文件系统、网络、屏幕、键盘等只能通过系统代码获得。

图 3. doPrivileged Stack Frame

基于 Java 2 运行时安全模型的线程协作

接下来,本文会给出一个简单的示例,然后我们根据这个示例,进一步深入,来创建一个线程间安全协作的应用。

示例

我们的示例很简单:客户端调用 LogService 提供的 API,把 Message 写入到磁盘文件。

清单 1. 客户端程序

package sample.permtest.client; 
  …… 
  public class Client { 
    …… 
    public static void main(String[] args) { 
    //构造消息日志,使用LogService将其写入c:\\paper\\client\\out.tmp文件。 
    Message message = new Message("c:\\paper\\client\\out.tmp", 
   "Hi, this is called from client"+'\n'); 
    LogService.instance.log(message); 
  
    //构造消息日志,使用LogService将其写入c:\\paper\\server\\out.tmp文件。 
    message = new Message("c:\\paper\\server\\out.tmp", 
   "Hi, this is called from client"+'\n'); 
    LogService.instance.log(message); 
  } 
} 

上一页  1 2 3 4 5 6 7 8  下一页

Tags:基于 Java 运行

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接