| Index: include/v8-platform.h
|
| diff --git a/include/v8-defaults.h b/include/v8-platform.h
|
| similarity index 59%
|
| copy from include/v8-defaults.h
|
| copy to include/v8-platform.h
|
| index b55c07fbad86efa439d77bfd05b344c1d6864d56..cf264d60e817855e048bdc4cde0578163225fda7 100644
|
| --- a/include/v8-defaults.h
|
| +++ b/include/v8-platform.h
|
| @@ -25,24 +25,51 @@
|
| // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -#ifndef V8_V8_DEFAULTS_H_
|
| -#define V8_V8_DEFAULTS_H_
|
| +#ifndef V8_V8_PLATFROM_H_
|
| +#define V8_V8_PLATFORM_H_
|
|
|
| #include "v8.h"
|
|
|
| +namespace v8 {
|
| +
|
| /**
|
| - * Default configuration support for the V8 JavaScript engine.
|
| + * A Task represents a unit of work.
|
| */
|
| -namespace v8 {
|
| +class Task {
|
| + public:
|
| + virtual ~Task() {}
|
|
|
| -V8_DEPRECATED("Use ResourceConstraints::ConfigureDefaults instead",
|
| - bool V8_EXPORT ConfigureResourceConstraintsForCurrentPlatform(
|
| - ResourceConstraints* constraints));
|
| + virtual void Run() = 0;
|
| +};
|
| +
|
| +/**
|
| + * V8 Platform abstraction layer.
|
| + *
|
| + * The embedder has to provide an implementation of this interface before
|
| + * initializing the rest of V8.
|
| + */
|
| +class Platform {
|
| + public:
|
| + /**
|
| + * Schedules a task to be invoked on a background thread. |task_is_slow|
|
| + * indicates that the task will run a long time. The Platform implementation
|
| + * takes ownership of |task|. There is no guarantee about order of execution
|
| + * of tasks wrt order of scheduling, nor is there a guarantee about the
|
| + * thread the task will be run on.
|
| + */
|
| + virtual void CallOnBackgroundThread(Task* task, bool task_is_slow) = 0;
|
|
|
| + /**
|
| + * Schedules a task to be invoked on a foreground thread wrt a specific
|
| + * |isolate|. Tasks posted for the same isolate should be execute in order of
|
| + * scheduling. The definition of "foreground" is opaque to V8.
|
| + */
|
| + virtual void CallOnForegroundThread(Isolate* isolate, Task* task) = 0;
|
|
|
| -V8_DEPRECATED("Use ResourceConstraints::ConfigureDefaults instead",
|
| - bool V8_EXPORT SetDefaultResourceConstraintsForCurrentPlatform());
|
| + protected:
|
| + virtual ~Platform() {}
|
| +};
|
|
|
| } // namespace v8
|
|
|
| -#endif // V8_V8_DEFAULTS_H_
|
| +#endif // V8_V8_PLATFORM_H_
|
|
|