Redian新闻
>
Java真的不能disable GC么?
avatar
Java真的不能disable GC么?# Programming - 葵花宝典
p*m
1
我的文章还被m了
wow,名媛封的人太多都不记得我是谁了。lol
avatar
T*i
2
goodbug,你Java也不及格。给你提示一下,一个是class的,另一个是ByteBuffer的。
avatar
l*n
3
by modifying the jvm or assigning a very large heap?
avatar
z*e
6
你是对的,后者其实不是disable,是绕开
完全不是一回事

【在 l**********n 的大作中提到】
: by modifying the jvm or assigning a very large heap?
avatar
g*g
7
太监那个帖子我看明白了,他连class GC跟object GC都分不清楚。多半是看到jrockit
有个disable class GC的option 就出来装了。
真是找打呀。
avatar
T*i
8
你牵狗都用了这么久。还好意思现么?

jrockit

【在 g*****g 的大作中提到】
: 太监那个帖子我看明白了,他连class GC跟object GC都分不清楚。多半是看到jrockit
: 有个disable class GC的option 就出来装了。
: 真是找打呀。

avatar
g*g
9
分析你为啥丢脸,是需要一点时间。你现在明白class gc跟object gc的区别了吗?
傻逼丢人了吧。

【在 T********i 的大作中提到】
: 你牵狗都用了这么久。还好意思现么?
:
: jrockit

avatar
T*i
10
别无耻了。我担保这个你根本没用过。做梦都没想过。

【在 g*****g 的大作中提到】
: 分析你为啥丢脸,是需要一点时间。你现在明白class gc跟object gc的区别了吗?
: 傻逼丢人了吧。

avatar
g*g
11
哈哈,太监出丑要土遁了。那你来教育我们吧。你不是看到一个noclassgc就以为把GC
禁掉了吧。
object跟class的区别都不懂,java的基础实在太差了吧。

【在 T********i 的大作中提到】
: 别无耻了。我担保这个你根本没用过。做梦都没想过。
avatar
z*e
12
用过那就有些年头了
1.2以后这个就变空壳了
没有任何意义
The option was still supported until the release of JDK 1.4 for backward
compatibility, but already starting from JDK 1.2 it didn’t do anything.
Besides adding complexity to your startup scripts.
https://plumbr.eu/blog/why-cant-i-turn-off-the-garbage-collector
avatar
T*i
13
是UseClassGC。
牵狗都牵错了。你听说过才怪。
Class GC最耗时。

【在 z****e 的大作中提到】
: 用过那就有些年头了
: 1.2以后这个就变空壳了
: 没有任何意义
: The option was still supported until the release of JDK 1.4 for backward
: compatibility, but already starting from JDK 1.2 it didn’t do anything.
: Besides adding complexity to your startup scripts.
: https://plumbr.eu/blog/why-cant-i-turn-off-the-garbage-collector

avatar
z*e
14
不好意思,jrockit我的确不怎么用

【在 T********i 的大作中提到】
: 是UseClassGC。
: 牵狗都牵错了。你听说过才怪。
: Class GC最耗时。

avatar
g*g
15
傻逼真是打脸要打到底呀,java里创建的绝大多数都是object,class只存static
variable.
无论你GC不GC跟disable GC那是十万八千里呀。
一个常见的应用,一般也就load几千个class。object creation,那是没头的,还
class GC最耗时,笑死我了。

【在 T********i 的大作中提到】
: 是UseClassGC。
: 牵狗都牵错了。你听说过才怪。
: Class GC最耗时。

avatar
T*i
16
GoodBug也牵狗牵错了。
狡辩有意思么?
这种系统,都预先allocate object pool,而且准备好ByteBuffer。还能剩下啥?

【在 z****e 的大作中提到】
: 不好意思,jrockit我的确不怎么用
avatar
g*g
17
你丫连class跟object的区别都分不清楚,还出来装呢。真是笑死我了。

【在 T********i 的大作中提到】
: GoodBug也牵狗牵错了。
: 狡辩有意思么?
: 这种系统,都预先allocate object pool,而且准备好ByteBuffer。还能剩下啥?

avatar
z*e
18
狡辩什么了?
jrockit是一个非标准虚拟机或者说是一个标准jvm的超集
里面有一些特殊设置这个我信
当初bea用这个来搞weblogic的
现在oracle准备把这个jrockit贡献给openjdk
已经开始给代码了
这严格意义上来说都不能说是java了
只是jrokit的一个feature而已
预先分配内存这个也很容易实现
都不需要禁用什么,直接在main里面加点代码就可以预加载了
这个跟禁不禁gc没有什么关系

【在 T********i 的大作中提到】
: GoodBug也牵狗牵错了。
: 狡辩有意思么?
: 这种系统,都预先allocate object pool,而且准备好ByteBuffer。还能剩下啥?

avatar
T*i
19
Object已经预先pool了。我早就说过了。Large object pool。

【在 g*****g 的大作中提到】
: 你丫连class跟object的区别都分不清楚,还出来装呢。真是笑死我了。
avatar
g*g
20
object pool叫做disable GC?你丫丢脸了就去google往回找脸。
最上面一贴可是写着disable class gc清清楚楚。你丫狡辩没用。
连object跟class都分不清,还有脸谈java,丢人。

【在 T********i 的大作中提到】
: Object已经预先pool了。我早就说过了。Large object pool。
avatar
z*e
21
老魏你知道这里heap和method的区别么?

【在 T********i 的大作中提到】
: Object已经预先pool了。我早就说过了。Large object pool。
avatar
a*i
22
完全不用gc,不就是memory leak吗?
所有数据都不释放?释放的话在Java里不用gc怎么做?只能自己写jvm了吧,自己写就
不是gc了?

【在 T********i 的大作中提到】
: Object已经预先pool了。我早就说过了。Large object pool。
avatar
T*i
23
你自己去想。只要在heap里面,就要占用GC time。
不在heap,GC就看不到。
GC都是generational的。

【在 g*****g 的大作中提到】
: object pool叫做disable GC?你丫丢脸了就去google往回找脸。
: 最上面一贴可是写着disable class gc清清楚楚。你丫狡辩没用。
: 连object跟class都分不清,还有脸谈java,丢人。

avatar
T*i
24
C++的实现也是memory leak呀。
我有一个大的memory pool。然后override memory management。难道不是memory leak?
只要我能trace我自己的pooled object,就是可管理的。
系统退出,都是只需要释放资源比如文件,socket。内存都懒的释放。

【在 a****i 的大作中提到】
: 完全不用gc,不就是memory leak吗?
: 所有数据都不释放?释放的话在Java里不用gc怎么做?只能自己写jvm了吧,自己写就
: 不是gc了?

avatar
z*e
25
老魏你知道不知道,如果你用了pool,你压根没有必要把那个参数设置为false
gc时候不会gc掉的,否则你那些pool里面的object直接给你抛出无数的异常来

【在 T********i 的大作中提到】
: 你自己去想。只要在heap里面,就要占用GC time。
: 不在heap,GC就看不到。
: GC都是generational的。

avatar
g*g
26
哈哈,越扯越没边了,你上面刚提 object pool, object pool 在哪里创建的你弄明白
了吗?object pool减少 gc 的原理你弄明白了吗?

【在 T********i 的大作中提到】
: 你自己去想。只要在heap里面,就要占用GC time。
: 不在heap,GC就看不到。
: GC都是generational的。

avatar
a*i
27
你对memory leak的定义是?
memory pool你给定义成memory leak的一种?

leak?

【在 T********i 的大作中提到】
: C++的实现也是memory leak呀。
: 我有一个大的memory pool。然后override memory management。难道不是memory leak?
: 只要我能trace我自己的pooled object,就是可管理的。
: 系统退出,都是只需要释放资源比如文件,socket。内存都懒的释放。

avatar
z*e
28
所以老魏才是真正的全堆程序员
就知道一个heap,其他啥都不知道

【在 g*****g 的大作中提到】
: 哈哈,越扯越没边了,你上面刚提 object pool, object pool 在哪里创建的你弄明白
: 了吗?object pool减少 gc 的原理你弄明白了吗?

avatar
y*y
29
楼主是不是想说ByteBuffer 和 Unsafe? 然后off heap?
avatar
m*5
30
魏老师和好虫老师两位大牛的争论,我是真看不懂的
web之类的也只最近才业余做不敢发表意见, 但是GC tuning 还是做过好一阵的
感觉这玩意儿完全是应用敏感的,看你运行的程序生成垃圾的频率,速度和大小. 总体感
觉对大部分应用, 要8小时不做GC还是比较困难的, 一切看你垃圾产生速度
而且而越长时间不做GC则通常做GC的时候 pause越长
对于我们的应用, 我们16GB heap, 允许70%浪费在存垃圾上, GC实际比较频繁, 响应可
以保证<1ms, 再小对我们的应用就很困难了, 后来改为C++实现.
魏老师和好虫的分歧也许是以前做过的应用很不同导致的.

【在 T********i 的大作中提到】
: goodbug,你Java也不及格。给你提示一下,一个是class的,另一个是ByteBuffer的。
avatar
g*g
31
他根本就没做过,行为艺术呢。

【在 m********5 的大作中提到】
: 魏老师和好虫老师两位大牛的争论,我是真看不懂的
: web之类的也只最近才业余做不敢发表意见, 但是GC tuning 还是做过好一阵的
: 感觉这玩意儿完全是应用敏感的,看你运行的程序生成垃圾的频率,速度和大小. 总体感
: 觉对大部分应用, 要8小时不做GC还是比较困难的, 一切看你垃圾产生速度
: 而且而越长时间不做GC则通常做GC的时候 pause越长
: 对于我们的应用, 我们16GB heap, 允许70%浪费在存垃圾上, GC实际比较频繁, 响应可
: 以保证<1ms, 再小对我们的应用就很困难了, 后来改为C++实现.
: 魏老师和好虫的分歧也许是以前做过的应用很不同导致的.

avatar
T*i
32
那个每天定期recycle的Java系统,能做到30us响应的。

【在 m********5 的大作中提到】
: 魏老师和好虫老师两位大牛的争论,我是真看不懂的
: web之类的也只最近才业余做不敢发表意见, 但是GC tuning 还是做过好一阵的
: 感觉这玩意儿完全是应用敏感的,看你运行的程序生成垃圾的频率,速度和大小. 总体感
: 觉对大部分应用, 要8小时不做GC还是比较困难的, 一切看你垃圾产生速度
: 而且而越长时间不做GC则通常做GC的时候 pause越长
: 对于我们的应用, 我们16GB heap, 允许70%浪费在存垃圾上, GC实际比较频繁, 响应可
: 以保证<1ms, 再小对我们的应用就很困难了, 后来改为C++实现.
: 魏老师和好虫的分歧也许是以前做过的应用很不同导致的.

avatar
h*c
33
ice tea should be ...
not sure.
avatar
h*c
34
maybe tricky, but possible.
avatar
z*e
35
iced tea和jrockit以后都会归并到openjdk里面去

【在 h**********c 的大作中提到】
: ice tea should be ...
: not sure.

avatar
h*c
36
possible or not?

【在 z****e 的大作中提到】
: iced tea和jrockit以后都会归并到openjdk里面去
avatar
T*i
37
是可控的memory leak来实现memory pool。

【在 a****i 的大作中提到】
: 你对memory leak的定义是?
: memory pool你给定义成memory leak的一种?
:
: leak?

avatar
z*e
38
你自己写jvm,什么不possible?
但是这不是一般意义上的java

【在 h**********c 的大作中提到】
: possible or not?
avatar
m*5
39
如果你的特殊应用垃圾产生速度很慢
那么有可能

【在 T********i 的大作中提到】
: 那个每天定期recycle的Java系统,能做到30us响应的。
avatar
x*d
40
co没看懂。
上次我问有没有用过customized的gc的,没人理我。TW这个也算的啦,不过disable,
还是很难理解。
内存白菜价,gc定制市场越来约小了。TW早几年能做gc定制,还是能赚不少钱的。

【在 m********5 的大作中提到】
: 魏老师和好虫老师两位大牛的争论,我是真看不懂的
: web之类的也只最近才业余做不敢发表意见, 但是GC tuning 还是做过好一阵的
: 感觉这玩意儿完全是应用敏感的,看你运行的程序生成垃圾的频率,速度和大小. 总体感
: 觉对大部分应用, 要8小时不做GC还是比较困难的, 一切看你垃圾产生速度
: 而且而越长时间不做GC则通常做GC的时候 pause越长
: 对于我们的应用, 我们16GB heap, 允许70%浪费在存垃圾上, GC实际比较频繁, 响应可
: 以保证<1ms, 再小对我们的应用就很困难了, 后来改为C++实现.
: 魏老师和好虫的分歧也许是以前做过的应用很不同导致的.

avatar
z*e
41
server side无脑上g1就好哈,很多咚咚我都懒得认真看
http://www.oracle.com/technetwork/java/javase/tech/g1-intro-jsp

【在 x****d 的大作中提到】
: co没看懂。
: 上次我问有没有用过customized的gc的,没人理我。TW这个也算的啦,不过disable,
: 还是很难理解。
: 内存白菜价,gc定制市场越来约小了。TW早几年能做gc定制,还是能赚不少钱的。

avatar
x*d
42
当年有哥们搞tuning以为很有前途,后来找工作的时候就知道亏了,有时间不如学别的
。其实都是很简单的东西。大家都是混口饭吃,没必要太装b。
我承认我不是全堆,我连全堆都不如,混日子,谁愿意啃那些document?谁爱看谁看,
搞错方向别后悔就行。
老板有钱,拍脑袋想玩定制的gc,你玩呗,是吧,我定位就是个全堆不如,别烦我。

【在 z****e 的大作中提到】
: server side无脑上g1就好哈,很多咚咚我都懒得认真看
: http://www.oracle.com/technetwork/java/javase/tech/g1-intro-jsp

avatar
m*5
43
现在android出来了, tuning又热了

【在 x****d 的大作中提到】
: 当年有哥们搞tuning以为很有前途,后来找工作的时候就知道亏了,有时间不如学别的
: 。其实都是很简单的东西。大家都是混口饭吃,没必要太装b。
: 我承认我不是全堆,我连全堆都不如,混日子,谁愿意啃那些document?谁爱看谁看,
: 搞错方向别后悔就行。
: 老板有钱,拍脑袋想玩定制的gc,你玩呗,是吧,我定位就是个全堆不如,别烦我。

avatar
z*e
44
dalvik也能tune?

【在 m********5 的大作中提到】
: 现在android出来了, tuning又热了
avatar
x*d
45
不知道,不敢碰。我觉得还是死跟business的安全,行业经验,呵呵,见仁见智。

【在 m********5 的大作中提到】
: 现在android出来了, tuning又热了
avatar
x*d
46
有人做出dalvik之外的jvm了么?tune,看你咋定义了,tune code行不?

【在 z****e 的大作中提到】
: dalvik也能tune?
avatar
b*e
47
我也没看懂,不是程序员,也不是全堆的,我记得不就方法区放perm里,heap的放eden
和old,通过2个survivor做交换,large object pool是啥,通过
pretensureSizeThreshold直接进old那个?新feature?
avatar
g*g
48
别听他扯了,他根本不懂,object pool现狗的,在哪都没弄明白。pool就是拿住
object不让 gc, 改变量来适应新 request.

eden

【在 b********e 的大作中提到】
: 我也没看懂,不是程序员,也不是全堆的,我记得不就方法区放perm里,heap的放eden
: 和old,通过2个survivor做交换,large object pool是啥,通过
: pretensureSizeThreshold直接进old那个?新feature?

avatar
m*a
49
这么讨厌GC,用unsafe自己管理不就得了。费那么多事干吗
avatar
g*g
50
What's the point of using unsafe, which is not documented, not officially
supported?
If GC is an issue, C/C++ is always an option.

【在 m******a 的大作中提到】
: 这么讨厌GC,用unsafe自己管理不就得了。费那么多事干吗
avatar
c*y
51
有些realtime jvm,还有什么hardware gc的系统谁搞过?给讲讲?

【在 T********i 的大作中提到】
: goodbug,你Java也不及格。给你提示一下,一个是class的,另一个是ByteBuffer的。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。