| Index: lib/isolate/isolate_api.dart
|
| diff --git a/lib/isolate/isolate_api.dart b/lib/isolate/isolate_api.dart
|
| index 3978b939d58145e61e2cc776a7ac32a1cb07777b..010007e2b5bd63f8ae59a3420ec226f2593fa35c 100644
|
| --- a/lib/isolate/isolate_api.dart
|
| +++ b/lib/isolate/isolate_api.dart
|
| @@ -1,4 +1,4 @@
|
| -// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
| +// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| @@ -146,98 +146,3 @@ interface SendPortSync {
|
| callSync(var message);
|
|
|
| }
|
| -
|
| -/**
|
| - * NOTE: This API will be deprecated soon.
|
| - *
|
| - * The [Isolate] class serves two purposes: (1) as template for spawning a new
|
| - * isolate, and (2) as entry-point for the newly spawned isolate.
|
| - *
|
| - * New isolates are spawned by sub-classing [Isolate] and then invoking
|
| - * [:spawn:] on the instance. This will spawn a new isolate, which creates a
|
| - * new instance of the class, initializes the instance's [port] field
|
| - * and invokes the instance method [main].
|
| - *
|
| - * The new instance is created by invoking the default constructor of the
|
| - * class that served as template for spawning the new isolate. This means, that
|
| - * sub-classes must have a default constructor (i.e. no-argument constructor).
|
| - *
|
| - * Isolates may be "heavy" or "light". Heavy isolates live in their own thread,
|
| - * whereas "light" isolates live in the same thread as the isolate which spawned
|
| - * them.
|
| - *
|
| - * NOTE: once [spawnFunction] and [spawnUri] are supported in both frog and the
|
| - * dartvm, this class will be removed. The distinction of heavy and light will
|
| - * be removed too. Thus far the main use for 'light' isolates is for running
|
| - * isolates that share access to the DOM. A special API will be added for this
|
| - * purpose soon. See the library top-level comments for more details.
|
| - */
|
| -// TODO(sigmund): delete once we implement the new API in the vm
|
| -class Isolate {
|
| -
|
| - /**
|
| - * Redirects to [Isolate.light].
|
| - */
|
| - Isolate() : this.light();
|
| -
|
| - /**
|
| - * Creates a new isolate-template for a light isolate.
|
| - */
|
| - Isolate.light() : _isLight = true;
|
| -
|
| - /**
|
| - * Creates a new isolate-template for a heavy isolate.
|
| - */
|
| - Isolate.heavy() : _isLight = false;
|
| -
|
| - /**
|
| - * Spawns a new isolate, using this instance as template.
|
| - *
|
| - * The new isolate lives in a new thread (for heavy templates)
|
| - * or in the same thread as the current isolate (for light templates), if
|
| - * possible.
|
| - *
|
| - * During the initialization of the new isolate a [ReceivePort] is created
|
| - * inside the new isolate and stored in the read-only field [port].
|
| - * A corresponding [SendPort] is sent to the isolate that invoked [spawn].
|
| - * Since spawning an isolate is an asynchronous operation this method returns
|
| - * a [Future] of this [SendPort].
|
| - *
|
| - * A common pattern to instantiate new isolates is to enqueue the instructions
|
| - * using [Future.then].
|
| - * [:myIsolate.spawn().then((SendPort port) { port.send('hi there'); });:]
|
| - */
|
| - Future<SendPort> spawn() {
|
| - return _IsolateNatives.spawn(this, _isLight);
|
| - }
|
| -
|
| - // The private run method is invoked with the receive port. Before
|
| - // main is invoked we store the port in a field so it can be
|
| - // accessed from subclasses of Isolate.
|
| - void _run(ReceivePort port) {
|
| - _port = port;
|
| - main();
|
| - }
|
| -
|
| - /**
|
| - * When [Isolate]s are used as entry-points, the [port] field contains a
|
| - * [ReceivePort]. The isolate that initiated the spawn holds a corresponding
|
| - * [SendPort].
|
| - *
|
| - * Note that isolates should generally close their [ReceivePort]s when they
|
| - * are done, including this port.
|
| - */
|
| - ReceivePort get port() {
|
| - return _port;
|
| - }
|
| -
|
| - /**
|
| - * When isolates are created, an instance of the template's class is
|
| - * instantiated in the new isolate. After the [port] has been set up, this
|
| - * [main] method is invoked on the instance.
|
| - */
|
| - abstract void main();
|
| -
|
| - final bool _isLight;
|
| - ReceivePort _port;
|
| -}
|
|
|