This testcase creates two threads for each tag, one thread continuously change 
the profiles, the second thread use that profiles for color conversion. The 
first thread executed no more than 15 seconds, and the second thread should be 
stopped when the first thread end.

Unfortunately on the slow systems the second thread may occupy all cpu time, 
and will run forever since the first thread will not be able make even one 
iteration to stop the second thread. I was able to reproduce it by changing 
implementation of color conversion so it will do x10 more work.

The fix add a check to stop the second thread after 15 seconds.

@lawrence-andrew please take a look and confirm that it will work fine on your 
system

-------------

Commit messages:
 - Update MTTransformReplacedProfile.java

Changes: https://git.openjdk.java.net/jdk/pull/5587/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=5587&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8273887
  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/5587.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/5587/head:pull/5587

PR: https://git.openjdk.java.net/jdk/pull/5587

Reply via email to