Skip to content

此处的死锁改成进程阻塞是否会更好呢??#1159

Merged
Snailclimb merged 1 commit intoSnailclimb:masterfrom
vcjmhg:patch-2
Apr 25, 2021
Merged

此处的死锁改成进程阻塞是否会更好呢??#1159
Snailclimb merged 1 commit intoSnailclimb:masterfrom
vcjmhg:patch-2

Conversation

@vcjmhg
Copy link
Copy Markdown
Contributor

@vcjmhg vcjmhg commented Apr 14, 2021

此处按照周志明老师《深入理解JVM虚拟机》第三版第七章虚拟机类的加载机制P279页的描述,此处可能会有的问题如果<clinit>()方法中有耗时很长的操作,其他进程由于无法获得锁会进入阻塞队列中一直等待。而死锁的定义是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。 而这里如果只是耗时时间过长的话并不会进入死锁,而是长时间处于阻塞队列中,耗时操作执行完成后,其他进程还是会正常执行下去。
所以这里使用进程阻塞是否会更好呢??

此处按照周志明老师《深入理解JVM虚拟机》第三版第七章虚拟机类的加载机制P279页的描述,此处可能会有的问题如果`<clinit>()`方法中有耗时很长的操作,其他进程由于无法获得锁会进入阻塞队列中一直等待。而死锁的定义是**指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。** 而这里如果只是耗时时间过长的话并不会进入死锁,而是长时间处于阻塞队列中,耗时操作执行完成后,其他进程还是会正常执行下去。
所以这里使用进程阻塞是否会更好呢??
@Snailclimb Snailclimb added enhancement New feature or request or suggestion perfect Improve knowledge points or descriptions 待处理 待处理的issue/pr labels Apr 14, 2021
@Snailclimb
Copy link
Copy Markdown
Owner

此处按照周志明老师《深入理解JVM虚拟机》第三版第七章虚拟机类的加载机制P279页的描述,此处可能会有的问题如果<clinit>()方法中有耗时很长的操作,其他进程由于无法获得锁会进入阻塞队列中一直等待。而死锁的定义是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。 而这里如果只是耗时时间过长的话并不会进入死锁,而是长时间处于阻塞队列中,耗时操作执行完成后,其他进程还是会正常执行下去。
所以这里使用进程阻塞是否会更好呢??

很赞很赞很赞的提交PR的格式!感谢老哥帮忙完善!爱你
image

@Snailclimb Snailclimb removed the 待处理 待处理的issue/pr label Apr 25, 2021
@Snailclimb Snailclimb merged commit 919d094 into Snailclimb:master Apr 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request or suggestion perfect Improve knowledge points or descriptions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants