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

          

  • 相关阅读:
    中国剩余定理及其扩展
    扩展欧几里得
    乘法逆元
    58-63用ssh远程连接linux系统
    148复习前一天的内容
    165-168函数
    Linux运维命令总结(-)
    177流程控制经典案例讲解
    170-176流程控制
    161【案例讲解】存储过程
  • 原文地址:https://www.cnblogs.com/tickobject/p/3627158.html
Copyright © 2011-2022 走看看