java记录代码执行位置_记录执行的java代码的行号

PHP interperts的代码,这意味着它每次运行程序时运行源代码.随着代码的读取(这使得行号打印输出变得微不足道),这样做的好处就在于它.然而,由于您无法进行深入优化(或进行任何运行前错误检查),因此其它方式通常都是昂贵的.

Java compiles its code into a JVM assembly language called “bytecode.”这意味着什么是运行通常不能访问(甚至使用)源代码.也就是说,有技巧.编译的Java类可以添加“额外的数据”,其中一个“额外的数据元素”是a line number table,这是一个索引,允许某人运行程序集“编制”编译器记录的行号.

这通常可以正常工作,考虑到:编译器通常不标记每个指令,源代码可能不可用,优化可能会使某些内部代码块无法以便于指向输入代码文本的方式运行.

代码覆盖工具如何“修复”这一点,它们通常将代码(在程序集级别)插入到大量有效地用作日志记录语句的命令中,该格式允许工具确定通过代码实际遵循的路径.然后通过行号表尽可能地映射回来,然后用于突出原始源文件中的行.

如果你想要更精细的分辨率(可以处理一行的哪一部分被执行的东西),那么你需要深入挖掘.最终,您甚至可能会考虑编写自己的编译器(或编译器扩展),它将存储您自己的自定义行号表,克服了当前解决方案的缺点.

抛出异常(如Shiven所提到的)和解析行号的技巧做得很好;但是,对于真正不例外的项目,它们会以奇异的异常处理来污染您的代码,只是为了获取行号.由于代码杂乱和异常的运行时性能较差,我倾向于避免使用这样的解决方案(但它们可以工作).

无论如何,希望这将给你一个看法,为什么它并不总是像PHP完全一样的工作.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/514679.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

揭秘双11丝滑般剁手之路背后的网络监控技术

简介: 本篇将重点介绍Hologres在阿里巴巴网络监控部门成功替换Druid的最佳实践,并助力双11实时网络监控大盘毫秒级响应。 概要:刚刚结束的2020天猫双11中,MaxCompute交互式分析(下称Hologres)实时计算Flin…

OpenKruise:阿里巴巴 双11 全链路应用的云原生部署基座

简介: Kruise 是 Cruise 的谐音,K for Kubernetes,寓意 Kubernetes 上应用的航行和自动巡行,它满载着阿里巴巴多年在大规模应用部署、发布与管理最佳实践,以及阿里云 Kubernetes 服务数千客户的需求沉淀。 来源 | 阿里…

在java applet程序用户自定义的_在Java Applet程序用户自定义的Applet子类中

Applet类是浏览器类库中最为重要的类,同时也是所有java小应用程序的基本类。Apple类中只有一种格式的构造方法public Apple(),此种方法用来创建一个Apple类的实例。因此,在编写Applet程序时,首先必须引入java.applet.Applet包。 一…

AI 如何推动双碳目标达成?施耐德电气这么说

以当前的排放总量而言,中国是全球碳排放第一大国。如何兼顾经济转型与能源低碳转型成为国家重要的发展战略之一,因此中国提出 2030 年碳达峰以及 2060 年碳中和的目标,并被写进《政府工作报告》中,成为各行各业关注的热点话题。 …

轻松玩转全链路监控

简介: 好的产品总是能给予用户最轻松的使用体验,并在实际生产中发挥出巨大的业务价值。我们不妨从现在开始,就将所有微服务应用通过无侵入的方式接入ARMS,构建一体化的全链路监控体系,而不是等到真正遇到生产故障的那一…

深度解读 MongoDB 最全面的增强版本 4.4 新特性

MongoDB 在今年正式发布了新的 4.4 大版本,这次的发布包含众多的增强 Feature,可以称之为是一个维护性的版本,而且是一个用户期待已久的维护性版本,MongoDB 官方也把这次发布称为「User-Driven Engineering」,说明新版…

四大招让无处不在的工作空间成为可能?揭秘Ivanti 的战略布局

如今二维码已成为我们生活、工作的“必需品”,大家往往会通过简单扫码获取内容信息或进行交易。受疫情的影响,人们对非接触式交易需求增多,二维码的应用场景更无处不在。 与此同时,二维码带来的安全问题也受到人们的关注&#xf…

深度| 每秒1.4亿次!再度刷新TPS记录的PolarDB如何应对双11“尖峰时刻”?

2020年是云原生数据库PolarDB全面支撑天猫双十一的第二年,天猫交易、买家、卖家以及物流等系统在双十一期间基于PolarDB为亿万客户提供了顺滑的体验。同时,PolarDB还刷新了去年由自己创造的数据库处理峰值(TPS)纪录,今…

python协程等待执行完成_当循环运行时,如何运行协同程序并等待同步函数的结果?...

同步等待异步协同程序如果一个异步事件循环已经通过调用loop.run_forever运行,它将阻塞执行线程,直到loop.stop被调用[请参阅docs]。因此,同步等待的唯一方法是在一个专用线程上运行事件循环,在循环上调度异步函数,然后…

Hologres是如何完美支撑双11智能客服实时数仓的?

简介: 本文重点介绍Hologres如何帮助阿里巴巴客户体验部(CCO),构建集实时化、自助化、系统化于一体的用户体验实时数仓,完美助力双11场景,支持上千服务大屏,削峰30%,节约成本近30%。…

云原生与AI时代的存储该是什么样?新华三发布全NVMe智能闪存与智慧中枢数据平台

编辑 | 宋慧 出品 | CSDN云计算 7月8日,紫光股份旗下新华三集团以“智以致用速达未来”为主题,召开“2021新华三存储新品发布会”,重磅推出云智原生的新一代端到端NVMe闪存存储H3C/HPE Alletra、分布式融合存储H3C UniStor X10000&#xff0…

数据中台技术及业务发展史与未来趋势展望

作者:陈晓勇、柯根 阿里巴巴数据技术编年 简史 2003年淘宝诞生于杭州一间民居。次年,Google发表了三篇大数据论文将计算技术引入大数据时代。 2004年Doug Cutting和Mike Cafarella根据Google的论文实现了Hadoop的HDFS和MR计算框架。 2006年 Hadoop项…

java客户端程序用什么自动化测试_五大Java自动化测试框架

51CTO官微技术资讯/行业精华/产品心得多年来,Java一直是服务器端应用开发的首选编程语言。随着时间的推移和自动化测试的兴起,业界出现了许多基于Java,并根据不同的业务逻辑而发展起来的开源框架。在此,我向大家介绍并比较五种用到…

微服务框架Go-Micro集成Nacos实战之服务注册与发现

简介: 本文主要介绍如何使用 Golang 生态中的微服务框架 Go-Micro(v2) 集成 Nacos 进行服务注册与发现。(Go-Micro 目前已经是 v3 版本,但由于某些原因项目已经更名为 nitro 具体原因大家可以去 github 中查看) 相关背景知识 Go-Micro Go Micro 是一个…

「深度学习知识体系总结(2021版)」开放下载了!

随着世界技术的迭代与发展,人工智能和机器学习正在超自动化领域,扮演着越来越重要的角色。2020年的冠状病毒疫情突发,整个世界都在防疫的道路上披荆斩棘。人工智能发挥了重大作用,智能测温、智能消毒、智能建设都能看到AI的影子。…

2020双11,阿里巴巴集团数万数据库系统全面上云揭秘

作者:阿里云高级技术专家 改天阿里云高级产品专家 胜通 2020年天猫双十一成交额突破4982亿,在双十一走过12个年头之际,我们的订单创建峰值达到58.3万笔/秒,再次刷新全球在线交易系统的记录。历年双十一都是对技术人的一次大考&…

php5.6 mongo 扩展,PHP5.6的安装及redis、memcache、mongo扩展

系统版本:CentOS Linux release 7.4.1708 (Core)PHP5.6下载地址:wget http://am1.php.net/distributions/php-5.6.37.tar.gz需要装好yum的epel-release,这上面有相对应的依赖包,否则依赖包没装好编译会报错!&#xff0…

以 Kubernetes 为代表的容器技术,已成为云计算的新界面

简介: 可以说,以 Kubernetes 为代表的容器技术正成为云计算新界面。容器提供了应用分发和交付标准,将应用与底层运行环境进行解耦。Kubernetes 作为资源调度和编排的标准,屏蔽底层架构差异性,帮助应用平滑运行在不同基…

2020双11养猫技术大揭秘

简介: 你养猫了没? 作者 | 淘系-珑晴 在电商领域,互动是一个重要的用户增长方案,在提升用户黏性、活跃以及拉新上都发挥着重要的作用。今年双11,淘系互动团队推出了“超级星秀猫”,我们不盖楼、不开车&…

Linux图片马PHP,php 根据请求生成缩略图片保存到Linux图片服务器的代码

这个功能,有点类似图片站点分离的操作,就是将图片单独架设在一台服务器上,有兴趣的朋友,好好研究下吧。代码如下:复制代码 代码示例:/*** 缩略图片 Linux图片服务器* edit www.jbxue.com*/$picID$_GET[imgID];$picType…