2017补全计划-JS引擎,UI引擎-学习笔记

参考资料有点多:

一篇给小白看的 JavaScript 引擎指南

浅析JavaScript引擎的技术变迁

浏览器渲染的那些事(一)

浏览器渲染的那些事(二)

浏览器渲染的那些事(三)

浏览器的JavaScript引擎(这篇比较有用)

目前学到的,关于JS引擎:

  1. 定义:JS引擎用于读取和编译 JavaScript 代码
  2. 不同浏览器有不同的引擎实现,内部多都分不同模块,进行分类工作
  3. 引擎有词法分析器,不同引擎实现不同,V8快大概因为他分析器逻辑厉害(找到了V8文档,还没阅读)

UI引擎: 目前找到的资料还不能帮我更好理解

学到印象比较深刻的是:

没错就是截图来的

webkit代码中说明了如何根据display属性决定某个节点创建什么对象的渲染对象。

RenderObject* RenderObject::createObject(Node* node, RenderStyle* style)
{
    Document* doc = node->document();
    RenderArena* arena = doc->renderArena();
    ...
    RederObject* o = 0;

    switch(style->display()){
        case NONE:
            break;
        case INLINE:
            o = new (arena) RenderInline(node);
            break;
        case BLOCK:
            o = new (arena) RenderBlock(node);
            break;
        ...
    }    
    return o;
}

不同的浏览器有不同的渲染引擎,Firefox浏览器为Gecko引擎,Safari为WebKit引擎,Chrome为Blink引擎。它的主要作用是生成网页,通常分成四个阶段。

解析HTML为DOM,解析CSS为CSSOM(CSS Object Model)

将DOM和CSSOM合成一棵渲染树(render tree)

完成渲染树的布局(layout)

将渲染树绘制到屏幕

在学习JS引擎过程中,又再次碰到JS的单线程(进程)问题,再次引出H5的worker,H5的多线程其实只算单线程(因为只能主线程控制),worker和主线程之间通过onmessage() 和 postMsg() 通信,多线程的作用主要体现在计算能力,我打算在接下来的项目中,使用一下用多线程代替string-base部分的各种render函数 (虽然多线程不能操作DOM,但是可以把render的string返回给主线程),如果一个巨大div的拼接需要大概3~4个函数,100多行代码循环执行,那把3~4个render函数分至2个worker线程,不知道能不能把执行时间提高一倍?

如果您忘记了 Mobaxterm 的主密码,这可能会导致您无法访问由密码保护的文件和目录,或者在使用其他功能时遇到问题。以下是您可以尝试的一些方法。 1. 重新安装 Mobaxterm:如果您忘记了主密码,并且没有重要的数据需要保留,最简单的方法可能是卸载 Mobaxterm 并重新安装。这将重置所有设置,包括密码。 2. 重置主密码:如果您不想重新安装 Mobaxterm,并且您有管理员权限,您可以尝试使用以下步骤重置主密码。 a. 在 Mobaxterm 中单击 "Settings"(设置) > "Master password"(主密码)。 b. 在主密码窗口中,单击 "Reset"(重置)。 c. 您将被要求输入您的 Windows 登录密码,然后单击 "OK"(确定)。 d. Mobaxterm 将提示您输入新的主密码。 请注意,这将重置所有使用主密码保护的文件和目录。请确保备份所有重要的数据。 3. 使用备份文件:如果您已创建了 Mobaxterm 的备份文件(.mobaxterm),您可以使用该文件来恢复主密码。 a. 在 Mobaxterm 中单击 "Settings" > "Configuration settings"(配置设置)。 b. 单击 "Backup and restore"(备份和恢复)。 c. 单击 "Restore settings"(恢复设置)并选择您的备份文件。 d. 在恢复设置向导的 "Security"(安全)选项卡中,单击 "Change master password"(更改主密码)。 e. 输入新的主密码并单击 "OK"。 请注意,这将使用备份文件恢复所有设置,包括主密码。这也将覆盖您的当前设置。 总之,如果您忘记了 Mobaxterm 的主密码,您可以尝试重新安装它,重置密码或使用备份文件来恢复密码。请记住,在执行任何操作之前,请备份所有重要数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值