"Deiceolate" Thread classes.
authormikhail.naganov@gmail.com <mikhail.naganov@gmail.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 10 Jun 2011 09:54:04 +0000 (09:54 +0000)
committermikhail.naganov@gmail.com <mikhail.naganov@gmail.com@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Fri, 10 Jun 2011 09:54:04 +0000 (09:54 +0000)
commit508b22c436cf9b0837e948dbb407d3aa25f21725
tree1c3c76db0568948219bacfaf11543015c06ef707
parentaa7ad8ee9da5d52e96135a374a4cc8462029b915
"Deiceolate" Thread classes.

Thread class was receiving an isolate parameter by default.
This approact violates the assumption that only VM threads
can have an associated isolate, and can lead to troubles,
because accessing the same isolate from different threads
leads to race conditions.

This was found by investigating mysterious failures of the
CPU profiler layout test on Linux Chromium. As almost all
threads were associated with some isolate, the sampler was
trying to sample them.

As a side effect, we have also fixed the DebuggerAgent test.

Thanks to Vitaly for help in fixing isolates handling!

R=vitalyr@chromium.org
BUG=none
TEST=none

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8259 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
34 files changed:
include/v8.h
samples/shell.cc
src/api.cc
src/cpu-profiler.cc
src/cpu-profiler.h
src/debug-agent.cc
src/debug-agent.h
src/debug.cc
src/debug.h
src/isolate.cc
src/isolate.h
src/log.cc
src/platform-cygwin.cc
src/platform-freebsd.cc
src/platform-linux.cc
src/platform-macos.cc
src/platform-nullos.cc
src/platform-openbsd.cc
src/platform-solaris.cc
src/platform-win32.cc
src/platform.h
src/v8threads.cc
src/v8threads.h
test/cctest/cctest.h
test/cctest/cctest.status
test/cctest/test-api.cc
test/cctest/test-circular-queue.cc
test/cctest/test-cpu-profiler.cc
test/cctest/test-debug.cc
test/cctest/test-lockers.cc
test/cctest/test-platform-tls.cc
test/cctest/test-sockets.cc
test/cctest/test-thread-termination.cc
test/cctest/test-threads.cc