2017-04-13 1 views
1

현재 여러 개의 JxBrowser를 시작해야하는 응용 프로그램을 개발 중입니다. 그리고이 경우 JxBrowser를 사용하여 응용 프로그램을 실행할 때 CPU 사용률, 100 % 및 메모리 사용량을 약 85 %로 완전히 활용하려고합니다. 그런 다음 Java Swing UI 스레드를 사용하여 한 번에 한 화면을 엽니 다. 첫 번째 화면 완료가 초기화되기 전에 다른 화면이 만들어져 다음과 같은 오류가 발생합니다. 그래서 문제가 오류를 발생 무엇JxBrowser는 스레드가 120 초 동안 교착 상태가되도록합니다.

com.teamdev.jxbrowser.chromium.BrowserException: Failed to load 'about:blank' web page within 120 seconds. 2017-04-13 15:05:23 257 ->[AWT-EventQueue-0]--[DEBUG]--[System]--com.teamdev.jxbrowser.chromium.BrowserException: Failed to load 'about:blank' web page within 120 seconds. at com.teamdev.jxbrowser.chromium.Browser.b(Unknown Source) 2017-04-13 15:05:23 258 ->[AWT-EventQueue-0]--[DEBUG]--[System]-- at com.teamdev.jxbrowser.chromium.Browser.b(Unknown Source) at com.teamdev.jxbrowser.chromium.Browser.<init>(Unknown Source) 2017-04-13 15:05:23 258 ->[AWT-EventQueue-0]--[DEBUG]--[System]-- at com.teamdev.jxbrowser.chromium.Browser.<init>(Unknown Source) at com.teamdev.jxbrowser.chromium.Browser.<init>(Unknown Source) 2017-04-13 15:05:23 258 ->[AWT-EventQueue-0]--[DEBUG]--[System]-- at com.teamdev.jxbrowser.chromium.Browser.<init>(Unknown Source) ...

내가 그 결과, 내 GUI 스레드가 출시 된 후 120 초 동안 잠겨 브라우저를 만들기 위해 GUI 스레드를 사용하고 있다는 점이다. 그리고 위의 오류 메시지가 표시됩니다.

현재 os = windows 7, i5 cpu, 8GB RAM이 장착 된 컴퓨터를 사용하고 있습니다. JxBrowser = 6.6이고 6.13으로 업그레이드해도 문제가 해결되지 않습니다. 또한 JInternalFrame과 통합하기 위해 heightweight BrowserType 대신 Lightweight를 사용하고 있습니다.

이 경우, 정상적으로 응용 프로그램을 열 때 3 개의 jxBrowser가 차례대로 열립니다. 그것은 예상대로 작동합니다. 어떤 일이 일어나고 있는지 알 수있는 사람이 있습니까?

잠시 동안 조사한 결과 someone saying that there is a deadlock problem when using Mac OS VM 인수 인 java.ipc.external=true을 추가하려고했지만 도움이되지 않습니다.

아무도 모르는 사람이 있습니까? 감사합니다. .

답변

2

다른 Browser 인스턴스를 생성하여 동일한 Chromium 프로필 디렉토리를 사용하도록 구성된 BrowserContext 인스턴스가 서로 다른 것으로 가정합니다. Chromium에서는 다른 BrowserContext 인스턴스 또는 프로세스에서 동일한 프로필 디렉토리를 동시에 사용할 수 없습니다. Chromium 엔진의 동결 또는 충돌과 같은 예기치 않은 문제가 발생할 수 있습니다.

JxBrowser 6.14에서 프로필 디렉토리의 유효성을 검사하는 코드를 추가했으며 다른 BrowserContext 인스턴스 또는 프로세스에서 이미 디렉토리를 사용하고있는 경우 예외를 throw합니다. 6.14 버전을 사용해 볼 수 있습니다. 이 문제의 근본 원인을 파악하는 데 도움이됩니다.

+0

Chromium 프로필 디렉토리는 어떻게 변경합니까? 사용할 수있는 특정 설정자가 있습니까? –

+0

@SajithDilshan https://jxbrowser.support.teamdev.com/support/solutions/articles/9000012878-creating-browser의 예제를 참조하십시오. – Vladimir

+0

자세한 링크를 가져 주셔서 감사합니다. –

관련 문제