#1092 UniversalIsomorphismTester not thread safe


UniversalIsomorphismTester uses static fields fro some results and for detecting timeouts.

final static int ID1 = 0;
final static int ID2 = 1;
private static long start;
public static long timeout=-1;

This prevents UIT usage in multiple threads. An easy refactoring would be to avoid static methods and fields altogether.


  • Egon Willighagen

    There are other problems too... not just the use of static fields... this is an area where serious refactoring needs happening soon... for now, consider any CDK class not-threadsafe... just use one UIT for each separate thread...

  • Nina Jeliazkova

    Nina Jeliazkova - 2010-09-01


    One UIT per thread doesn't work , since static fields will be the same. However, wrapping UIT methods with synchronized block is a workaround.

  • Egon Willighagen

    Yes, you're absolutely right there... the static would not even allow that...

    We should make a plan about how to prioritize this...

  • John May

    John May - 2013-09-23

    UIT is now an instance class

  • John May

    John May - 2013-09-23
    • status: open --> closed
    • Group: --> cdk-1.0.x

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks