[Soot-list] A question on Soot Call Graph

=?GB2312?B?x66+3g==?= jqian at seu.edu.cn
Wed Dec 6 01:26:06 EST 2006


Hi,
I've just built a context-insensitive call graph for the following
program using Soot CallGraphBuilder.

public class CallGraphCase {
static class Foo extends Thread{
public void run(){}
}

static class Bar extends Thread{
public void run(){}
}

public static void main(String[] args) {
Thread a = new Foo();
Thread b = new Bar();

a.start();
b.start();
}
}

Now it seems that the CallGraphCase.main() can directly call
Thread.start(), Foo.run() and Bar.run(). While in my opinion,
the CallGraphCase.main() should firstly call Thread.start(), and then
Thread.start() call Foo.run() or Bar.run(). Could anyone
give me some explanation on how soot handles threads in a call graph.

Thanks very much!


More information about the Soot-list mailing list