zoukankan      html  css  js  c++  java
  • 关于web项目run模式启动和debug模式启动的一些区别

    之前总是觉得 run 和 debug 模式存在性能区别,其实也没错,那些断点调试机制又不是买一赠一。

    那到底怎么选择?

    浅谈下其他区别:

    在debug模式下,当我们修改方法体内的代码时,我们是不需要重启web server的,web服务器会自动的把这些改动替换到vm当中,学名叫hot swap。通过以下运行时的截图,给大家展示一下效果

    原始情况下:

    在不重启web服务器的情况下,修改控制台输出内容,运行时控制台输出内容即为修改后的内容

    可以看到,在不重启web server的情况下,我们修改的内容会马上起作用。也即,这些内容会动态的添加到运行的vm当中。

    但经过测试,发现并不是所有情况下,我们的改动都会同步更新到运行时vm当中。下面把可以动态更新到vm中的情况与不能动态更新到vm中的情况列一下:

    改动内容可以动态更新到vm的情况

    1、修改方法体内的内容,无论是实例方法还是静态方法。

    不能动态更新到vm的情况

    1、新增、删除实例方法、静态方法时。

    2、新增、删除实例变量、类变量时。

    3、引入了新创建的内部或外部类时。

    4、方法当中有对类变量或实例变量的引用,当外部变量被修改时。

    上面是网络上对于热替换功能做出的解释。

    个人总结:如果你机器卡,且后台稳定。文档清楚,那就run吧。不然还是老老实实debug,调试起来方便。

  • 相关阅读:
    20年美亚杯WRITE UP
    博客搬迁
    前端工程化1-模块
    移动端(h5)工具函数--视口适配(viewport)
    Understanding ES6 Modules(译)
    手写http请求并发、重试、超时函数
    两道编程题引发的思考
    前端基础走查(六):异步任务和事件循环
    vue 本地图片批量下载以及压缩成zip文件下载
    mybatis generator逆向工程
  • 原文地址:https://www.cnblogs.com/cfsxgogogo/p/12216806.html
Copyright © 2011-2022 走看看