zoukankan      html  css  js  c++  java
  • Javascript多线程引擎(七)

    Javascript多线程引擎(七)--synchronized关键字

      经过两天的努力, 今天synchronzied关键字终于支持了, 如下是测试代码

        

      thread() 是一个开启新线程的API, 后期会提供一个完整的Thtread 类, 现在就简单的使用把  ^_^

      支持的语法格式为:

      var a = synchronized function(){

                 //被同步的代码段

         };

          synchronzied function hello(){

            //被同步的代码段

         };

        var lock  = {};

         synchronized(lock){

         //根据对象同步代码  

        }

       synchronzied(this){

       //this 类型代码同步

       };

       这基本的四种同步方式,  和Java类似.

      如下是测试log:

                   

      打印不会被中断.

      这样子, 整个引擎就基本实现了类似java的同步模型, 并且提供了NIO API接口 , 具体可以看setTimeout() API。  

      为什么要提供synchronzied 和多线程呢? 仅仅是为了 给服务端开发的时候提供更多的选择, 可以像Node.js 一样单线程+NIO, 也可以是Java多线程+阻塞

    更可以像Java多线程+阻塞+NIO。 ^_^

      

         项目地址为 :

                     github.com/darkgem/js-engine

          

  • 相关阅读:
    eclipse快速收缩展开代码
    Java中this关键字在构造方法中的使用
    Java中String的常用方法
    Java中的Comparable<T>和Comparator<T>接口
    Oracle中的自增-序列-SEQUENCE
    Java中的代码块
    Oracle中的约束
    Oracle中对表的操作
    ROWID-Oracle中删除重复行数据
    Selenium简单回顾
  • 原文地址:https://www.cnblogs.com/tickobject/p/3627158.html
Copyright © 2011-2022 走看看