小编ric*_*chs的帖子

Windows上的Java堆栈跟踪

我需要为使用Windows的客户端计算机上运行的JVM进程获取堆栈跟踪.

客户端安装了JRE,但没有安装JDK.

我想使用JStack,但它没有安装,我们无法在客户端的机器上安装JDK.我也尝试过使用来自Java Webstart会话的AdaptJ堆栈跟踪产品,但由于我们远程进入并且因为不是在指定PID处启动应用程序的会话而得到错误.

基本上我想要一种安装JStack而无需安装JDK的方法.

java jstack

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

java 128位结构位maninpulation

有没有办法在java中创建一个128位对象,可以像long或int那样进行位操作?我想做32位移位,我希望能够对整个128位结构进行一些OR运算.

java bit-manipulation

6
推荐指数
1
解决办法
3323
查看次数

java web start JAVA_HOME

我有一个应用程序,使用java web start启动Swing gui.用户安装了4个版本的java 1.6(1.6.0.3,1.6.0.5,1.6.0.7.1.6.0.11)

Webstart正在选择java版本1.6.0.11,但JAVA_HOME设置为java版本1.6.0.3.这会导致webstart出现任何潜在问题吗?

  • 丰富

java java-web-start

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

ScheduledThreadPoolExecutor因CPU时间差异而执行错误的时间

我正在使用ScheduledThreadPoolExecutor对象安排任务.我使用以下方法:

public ScheduledFuture<?> schedule(Runnable command, long delay,TimeUnit unit) 
Run Code Online (Sandbox Code Playgroud)

并将延迟设置为30秒(延迟= 30,000,单位= TimeUnit.MILLISECONDS).有时我的任务会立即发生,有时需要70秒.

我相信ScheduledThreadPoolExecutor使用CPU特定的时钟.当我运行测试比较System.currentTimeMillis(),System.nanoTime()[具体是CPU]时,我看到以下内容

时间表:1272637682651ms,7858346157228410ns

执行:1272637682667ms,7858386270968425ns

差异是16ms但是4011374001ns(或40,113ms)

因此看起来两个CPU时钟之间的差异为40秒

我如何在Java代码中解决此问题?不幸的是,这是一台客户端机器,我无法修改他们的系统.

java concurrency java.util.concurrent

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

java一个元素列表

使用一个元素创建列表的最有效(高效)方法是什么?

java

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

构建后可见的Java非final int

我有一个带有非final int变量的java类,我在构造函数中将其显式初始化为0.所有对变量的其他访问都由ReentrantLock管理.我是否必须担心线程不会看到0的初始值,因为我没有在构造函数中使用锁?

java concurrency

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

有没有办法强制JVM在单个处理器或Core上运行

在Java中,有没有办法强制JVM实例在单个CPU/Core上运行.

另外有一种方法可以让给定的线程找出它运行的CPU吗?

java concurrency

4
推荐指数
1
解决办法
2878
查看次数

获取运行 JVM 的 GC 设置

有没有办法获取正在运行的 JVM 的 GC 设置?

我正在尝试查看运行 SerialGC、ParallelGC、ParallelOldGC、ConcurrentMarkSweepGC 等的 GC 算法。

java garbage-collection

2
推荐指数
1
解决办法
1204
查看次数

分析java堆栈跟踪,正在运行什么线程

我正在分析java中的堆栈跟踪转储,并且不知道我怎么知道哪些线程实际上正在运行.我看到一个线程的方式是运行,等待锁,睡觉或等待安排.

在我的堆栈跟踪中,我看到以下状态

java.lang.Thread.State: WAITING (on object monitor)
java.lang.Thread.State: RUNNABLE
java.lang.Thread.State: TIMED_WAITING (sleeping)
java.lang.Thread.State: WAITING (parking)
java.lang.Thread.State: TIMED_WAITING (parking)
Run Code Online (Sandbox Code Playgroud)

首先,这些状态到底意味着什么?

其次,我有11个线程,runnable其中两个正在等待条件.这是否意味着9个线程同时运行?这似乎不可能,因为我的机器没有那么多的核心.

java multithreading multicore stack-trace

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

sybase 将结果格式化为 4 位小数

在 sybase 中,如何将数字字段的 select 语句的结果格式化为没有逗号和 4 个十进制数字。

例如:

344,500.39495 = 344500.3949

492,930,948.39 = 492930948.3900

sybase

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