JRocket: тема застряла в jrockit / vm / Locks.park0 - PullRequest
0 голосов
/ 21 мая 2018

Видя очень странное поведение.Мой код работает хорошо, но не уверен, что происходит, метод вызывает другой метод, но другой метод не вызывается (я не могу увидеть журналы, которые есть в первой строке другого метода)

"jaxws-engine-1-thread-2" id=447 idx=0x73c tid=4031 prio=5 alive, parked, native_blocked, daemon
    at jrockit/vm/Locks.park0(J)V(Native Method)
    at jrockit/vm/Locks.park(Locks.java:2230)
    at sun/misc/Unsafe.park(ZJ)V(Native Method)
    at java/util/concurrent/locks/LockSupport.parkNanos(LockSupport.java:196)
    at java/util/concurrent/SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:424)
    at java/util/concurrent/SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:323)
    at java/util/concurrent/SynchronousQueue.poll(SynchronousQueue.java:874)
    at java/util/concurrent/ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:955)
    at java/util/concurrent/ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:917)
    at java/lang/Thread.run(Thread.java:682)
    at jrockit/vm/RNI.c2java(JJJJJ)V(Native Method)
    -- end of trace

Код -

  public static void startMicroSessionTimer(TimerName timerName, Data Data) {
        logger.debug("Starting a micro-timer for timer name: " + timerName);
        //Start a micro timer to process the soap response in worker thread
        SipApplicationSession applicationSession = Util.getAppSession((String)Data.get(DataAttribute.ID));
        Util. AbcTimer (applicationSession, 1L, timerName.getTimerName());
  }


public static void AbcTimer(SipApplicationSession appSession,
            long timeInMillies, String timerName) {

        logger.debug("Inside AbcTimer”);
        //Some Logic
}

Журналы -

16 May 2018 09:13:07,506 [jaxws-engine-1-thread-12] DEBUG -----SOME LOGS…..
16 May 2018 09:13:07,506 [jaxws-engine-1-thread-12] DEBUG [AbcUtils] [ODhlNjQ0ZjAzMTMzN2U5MGNhMTE2MTgxOTg2MTdmYjA.] Starting a micro-timer for timer name: HAHAHA

Не удалось увидеть ни одного журнала после указанной выше строки для темы jaxws-engine-1-thread-12.Согласно журналу, этот журнал Inside AbcTimer должен быть таким, каким он есть в начале вызываемого метода, т.е. AbcTimer.Исключений не произошло.

Я также использовал ThreadDump, который я разместил выше.

Не уверен, но думаю, что это проблема, связанная с конкретной машиной.Кроме того, Google и увидел, что этот тип проблемы возникла и у других людей, но я не получил решение.

Использование ниже версии JRocket

java version "1.6.0_141"
Java(TM) SE Runtime Environment (build 1.6.0_141-b12)
Oracle JRockit(R) (build R28.3.13-15-173128-1.6.0_141-20161219-1845-linux-x86_64, compiled mode)
...