小编Mik*_*nov的帖子

如何调查JVM崩溃的原因?

一天前,经过几个月的正常工作,我们的java应用程序偶尔会崩溃并出现以下错误:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (safepoint.cpp:247), pid=2075, tid=140042095163136
#  guarantee(PageArmed == 0) failed: invariant
#
# JRE version: 6.0_23-b05
# Java VM: Java HotSpot(TM) 64-Bit Server VM (19.0-b09 mixed mode linux-amd64 compressed oops)
# An error report file with more information is saved as:
# /var/chat/jSocketer/build/hs_err_pid2075.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Run Code Online (Sandbox Code Playgroud)

我查看了hs_err_pid2075.log,看到有一个活动线程处理网络通信.但是,在过去几个月中没有进行任何应用程序或环境更改.也没有任何负载增长.我该怎么做才能理解,崩溃的原因是什么?是否有任何常见的步骤来调查jvm崩溃?

UPD http://www.wuala.com/ubear/public

java crash jvm jvm-crash

27
推荐指数
2
解决办法
2万
查看次数

如何在Haskell中概括来自url和文件的读取

我开发了一个应用程序,它通过具有给定偏移量的块来从Internet借用数据.出于测试目的,我有一个转储文件,其中包含每行与单独块相对应的行.我想从url和dump文件中概括读取操作.目前,我有以下功能:

getChunk :: DataSourceMode -> Config -> Int -> Int -> IO FetchResult
getChunk DSNormal config ownerId' offset' = do ...
getChunk DSFromFile config ownerId' offset' = do ...
Run Code Online (Sandbox Code Playgroud)

当前实现的问题是它在每个getChunk调用上读取转储文件,显然它是无效的.第一个想法是将转储文件中的行保存到列表中,但是使用url的读数来概括它并不容易.我想,导管或管道可用于构建块的来源,但我不熟悉这些库; 我应该使用其中之一,或者,是否有更好的解决方案?

haskell

5
推荐指数
1
解决办法
712
查看次数

标签 统计

crash ×1

haskell ×1

java ×1

jvm ×1

jvm-crash ×1