社区
Java SE
帖子详情
关于java本地编译可能出现的问题
kevindude
2001-07-09 08:10:47
现在听到有一些工具可以将java编译成本地代码,但不知会不会有问题。
比如,虚拟机可以做垃圾处理,如果编译成代码,会不会造成内存泄漏?
欢迎就这个问题作一些讨论。
...全文
118
5
打赏
收藏
关于java本地编译可能出现的问题
现在听到有一些工具可以将java编译成本地代码,但不知会不会有问题。 比如,虚拟机可以做垃圾处理,如果编译成代码,会不会造成内存泄漏? 欢迎就这个问题作一些讨论。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hicharlie
2001-07-13
打赏
举报
回复
这方面,vb也是这么做的,用dll做虚拟机,p-code作中间语言,
java作成这个是绝对没有问题的。
kevindude
2001-07-09
打赏
举报
回复
垃圾收集虽说是java本身的语言特性,可是它是靠java虚拟机中的一个守护线程完成的。一旦编译成本地代码,不就脱离了虚拟机环境了吗?
vive
2001-07-09
打赏
举报
回复
你给分吗?
jdk缺省是用jit,就是运行时候编译成本地代码,所以速度快。就是说,你直接用java.ere 或者jre.exe运行你的程序,就是先编译成本地代码的。我做扫毒引擎的时候,java版本用时只是C版本的1.3-1.6倍。
至于编译成.exe文件,我用过VJ和jet.
VJ很久以前用的,现在不清楚了。vj兼容性不好,不是pure java.
jet编译了整个jdk,编译出来30多兆的.dll,要和.exe一起分发,所以没多大意思。
至于内存泄漏,不可能的。垃圾收集是java本身的语言特性,不做垃圾收集就不是java了。
hicharlie
2001-07-09
打赏
举报
回复
记得以前Visaul Cafe可以编译成exe文件,不过要带很多Dll,
估计一种语言,要编译成可执行代码是非常简单的事,只要编译程序处理适当,内存泄漏是可以避免的。
kevindude
2001-07-09
打赏
举报
回复
现在听到有一些工具可以将java编译成本地代码,但不知会不会有问题。
比如,虚拟机可以做垃圾处理,如果编译成本地代码,会不会造成内存泄漏?
欢迎就这个问题作一些讨论。
没人愿意讨论吗?
Dalvik虚拟机 PPT版
Android应用程序是运行在Dalvik虚拟机里面的,并且每一个应用程序对应有一个单独的Dalvik虚拟机实例。Android应用程序中的Dalvik虚拟机实例实际上是从Zygote进程的地址空间拷贝而来的,这样就可以加快Android应用程序的启动速度。Dalvik虚拟机与
Java
虚拟机共享有差不多的特性,例如,它们都是解释执行,并且支持即时
编译
(JIT)、垃圾收集(GC)、
Java
本地方法调用(JNI)和
Java
远程调试协议(JDWP)等,差别在于两者执行的指令集是不一样的,并且前者的指令集是基本寄存器的,而后者的指令集是基于堆栈的。这个PPT讲Dalvik虚拟机的内存管理、垃圾收集、即时
编译
、
Java
本地调用、进程和线程管理等。理解Dalvik虚拟机的上述实现细节,有助于在运行时修改程序的行为,例如,拦截
Java
函数的调用。
Java
本地
编译
jar包命令
Java
本地
编译
jar包命令
java
怎么
编译
_
java
怎么
编译
运行?
java
有哪些
编译
方法?
学习
java
就是为了能够将写好的程序运行起来,毕竟
Java
程序代码需要
编译
后才能运行,那么今天我们就为大家分享一下
java
编译
运行的方法,不会的小伙伴可以做个参考!1.创建一个带有文件扩bai展名 *.
java
的源文件,使用编辑器(如记事本,使用的是notepad++),输入以下6行文本://一个简单的application例子:打印一行文本classHello{publicstaticv...
Java
程序
编译
和运行的过程
转载自:https://www.cnblogs.com/qiumingcheng/p/5398610.html
Java
整个
编译
以及运行的过程相当繁琐,本文通过一个简单的程序来简单的说明整个流程。 如下图,
Java
程序从源文件创建到程序运行要经过两大步骤:1、源文件由
编译
器
编译
成字节码(ByteCode) 2、字节码由
java
虚拟机解释运行。因为
java
...
JVM(一)一文读懂
Java
编译
全过程
一文读懂
Java
编译
全过程
Java
文件
编译
过程包括两个阶段,第一阶段是在
编译
阶段
编译
成
Java
字节码的过程,有些书籍中叫前端
编译
器,如Oracle的
java
c
编译
器;第二阶段是在运行时,通过JVM的
编译
优化组件,对代码中的部分代码
编译
成本地代码,即JIT
编译
,如HotSpot中的C1、C2
编译
器。JVM整个
编译
过如下图所示。 其中,
编译
状态有如下9种。 //
编译
状态 public enum CompileState { INIT(0),//初始化 PARSE(1),//
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章