Javascript多线程引擎(八)

      Javascript 多线程项目, 做到现在已经快3个月了(加上前期准备编译原理和必要的文档), 该项目(js-engine)已经快进入尾声了, 现在该引擎的特性包括如下:

      1. 全C语言代码(适合嵌入式)

      2. 没有正则表达式(不能算是好的特性 , 以后有机会可以添加)

      3. 没有Unicon支持(也不是好特性, 只是支持Ascii)

      4. 没有lable with 语句了(相信大家在Javascript编程中用这两个特性把)

      5. 解析器报错(可以调试语法是否发生错误, 具体的参数在JsParser.h 的几个宏)

      6. 内置了几个基本类型[Object , Function , String , Boolean, Number, Array , Thread ,Global]

      7. 支持异常系统(该特性 可以大大的减少return 之后,对函数判断的语句 ^_^ , 并且支持Stack 打印, 保证你能追踪到错误 , 最后也用来释放非托管资源)

      8. 支持多线程: synchronzied关键字,可以对Object, 或者 函数声明前添加. 并且提供了join ,sleep,  yield 线程特性函数. 帮助你 完成线程管理

      9. 简易的NIO API构造函数, 

            JsThread JsNIO(JsThreadFn work,void* data, struct JsObject* o, int openEngine);

       就可以开启额外的线程, 来完成IO工作, 完成后加入到调度队列中.

       也可以开启另外一个引擎, 调度到新引擎的调度队列中.

      10. 在该系列第一篇文章中,说引擎不支持垃圾回收^_^,  现在决定还是支持该特性,毕竟没有垃圾回收的功能,这个引擎可能永远停留在Github上了。

      11. JIT, 这个难度比较大, 在完成垃圾回收后, 尽量提供该特性.

     添加了垃圾回收模块后, 感觉现在这个引擎和lua之类的嵌入式引擎的差距不是很大了 ^_^.

    接下来就添加几个多线程 test case:

  Thread.join 测试用例:

      

    测试结果:

      

    Sleep.js 测试:

      

    测试结果:

      

    希望下次写文章的时候, 已经把垃圾回收做出来了~~

    谢谢大家的支持.^_^

    项目地址:

      github.com/darkgem/js-engine

最新文章

  1. CSS3鼠标滑过图标放大以及旋转
  2. poj 2774
  3. [蓝牙] 6、基于nRF51822的蓝牙心率计工程消息流Log分析(详细)
  4. java 21 - 13 IO流之序列化和反序列化
  5. 使用WBI SAP Adapter 实现IDoc的同步处理(转)
  6. linux 环境变量【转】
  7. Bug: freetype/fterrors.h: No such file or directory
  8. android之listView定位到指定行同一时候隐藏输入键盘
  9. css水平垂直居中的方法与 vertical-align 的用法
  10. CF D. One-Dimensional Battle Ships
  11. [转]Python中__repr__和__str__区别
  12. 按某个属性排序(字典序,ascII) js/python
  13. Java全栈程序员之03:Ubuntu下安装idea
  14. 手把手教你用Spring Cloud和Docker构建微服务
  15. 如何得到Slave应用relay-log的时间
  16. python2/3 中删除字典中value为空的键值对方法
  17. 【BZOJ4591】【Shoi2015】超能粒子炮
  18. 在DHTML中把整个文档的各个元素作为对象处理的技术是:()
  19. php 操作提示框
  20. 流畅的python第三章字典和集合学习记录

热门文章

  1. 构造activeMQ
  2. MBProgressHUD 问题
  3. CentOS6.5查看一port执行状态
  4. android:更改PagerTabStrip背景颜色,标题字体样式、颜色和图标,以及指示条的颜色
  5. 中国人被“清朝GDP世界第一”忽悠了!
  6. SQL Server 2008杀数据库连接
  7. Javascript学习2 - Javascript中的表达式和运算符
  8. Java串口通信详细解释
  9. DOS call 中的%cd%,当前文件夹演示
  10. 也许游戏 它P/N图分析