| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. | 2 * Copyright (C) 2008 Apple Inc. All Rights Reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 432 backingThread().shutdown(); | 432 backingThread().shutdown(); |
| 433 } | 433 } |
| 434 | 434 |
| 435 v8::Isolate* WorkerThread::initializeIsolate() | 435 v8::Isolate* WorkerThread::initializeIsolate() |
| 436 { | 436 { |
| 437 ASSERT(isCurrentThread()); | 437 ASSERT(isCurrentThread()); |
| 438 ASSERT(!m_isolate); | 438 ASSERT(!m_isolate); |
| 439 v8::Isolate* isolate = V8PerIsolateData::initialize(); | 439 v8::Isolate* isolate = V8PerIsolateData::initialize(); |
| 440 V8Initializer::initializeWorker(isolate); | 440 V8Initializer::initializeWorker(isolate); |
| 441 | 441 |
| 442 m_interruptor = adoptPtr(new V8IsolateInterruptor(isolate)); | 442 OwnPtr<V8IsolateInterruptor> interruptor = adoptPtr(new V8IsolateInterruptor
(isolate)); |
| 443 ThreadState::current()->addInterruptor(m_interruptor.get()); | 443 ThreadState::current()->addInterruptor(interruptor.release()); |
| 444 ThreadState::current()->registerTraceDOMWrappers(isolate, V8GCController::tr
aceDOMWrappers); | 444 ThreadState::current()->registerTraceDOMWrappers(isolate, V8GCController::tr
aceDOMWrappers); |
| 445 | 445 |
| 446 return isolate; | 446 return isolate; |
| 447 } | 447 } |
| 448 | 448 |
| 449 void WorkerThread::willDestroyIsolate() | 449 void WorkerThread::willDestroyIsolate() |
| 450 { | 450 { |
| 451 ASSERT(isCurrentThread()); | 451 ASSERT(isCurrentThread()); |
| 452 ASSERT(m_isolate); | 452 ASSERT(m_isolate); |
| 453 V8PerIsolateData::willBeDestroyed(m_isolate); | 453 V8PerIsolateData::willBeDestroyed(m_isolate); |
| 454 ThreadState::current()->removeInterruptor(m_interruptor.get()); | |
| 455 } | 454 } |
| 456 | 455 |
| 457 void WorkerThread::destroyIsolate() | 456 void WorkerThread::destroyIsolate() |
| 458 { | 457 { |
| 459 ASSERT(isCurrentThread()); | 458 ASSERT(isCurrentThread()); |
| 460 V8PerIsolateData::destroy(m_isolate); | 459 V8PerIsolateData::destroy(m_isolate); |
| 461 } | 460 } |
| 462 | 461 |
| 463 void WorkerThread::terminateV8Execution() | 462 void WorkerThread::terminateV8Execution() |
| 464 { | 463 { |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 508 InspectorInstrumentation::didLeaveNestedRunLoop(m_workerGlobalScope.get()); | 507 InspectorInstrumentation::didLeaveNestedRunLoop(m_workerGlobalScope.get()); |
| 509 } | 508 } |
| 510 | 509 |
| 511 void WorkerThread::setWorkerInspectorController(WorkerInspectorController* worke
rInspectorController) | 510 void WorkerThread::setWorkerInspectorController(WorkerInspectorController* worke
rInspectorController) |
| 512 { | 511 { |
| 513 MutexLocker locker(m_workerInspectorControllerMutex); | 512 MutexLocker locker(m_workerInspectorControllerMutex); |
| 514 m_workerInspectorController = workerInspectorController; | 513 m_workerInspectorController = workerInspectorController; |
| 515 } | 514 } |
| 516 | 515 |
| 517 } // namespace blink | 516 } // namespace blink |
| OLD | NEW |