Changeset 18770

Show
Ignore:
Timestamp:
09/04/08 00:22:47 (5 years ago)
Author:
tokuhirom
Message:

added fork & sleep

Location:
lang/cplusplus/fcgi-v8/trunk
Files:
3 added
1 modified
1 moved

Legend:

Unmodified
Added
Removed
  • lang/cplusplus/fcgi-v8/trunk/Makefile

    r18750 r18770  
    11#!/bin/sh 
    2 STANDARDOBJS=util.o core.o syscall-linux.o 
     2STANDARDOBJS=util.o core.o posix.o 
    33LIBDIR=../v8/ 
    44INCDIR=../v8/src/ 
  • lang/cplusplus/fcgi-v8/trunk/posix.cc

    r18750 r18770  
    44#include <sys/types.h> 
    55#include <stdlib.h> 
     6#include <unistd.h> 
    67 
    78v8::Handle<v8::Value> Mkdir(const v8::Arguments& args) { 
     
    2223} 
    2324 
    24 void setup_syscall(v8::Handle<v8::ObjectTemplate> target) { 
    25     target->Set(v8::String::New("mkdir"), v8::FunctionTemplate::New(Mkdir)); 
    26     target->Set(v8::String::New("getenv"), v8::FunctionTemplate::New(GetEnv)); 
     25v8::Handle<v8::Value> Fork(const v8::Arguments& args) { 
     26    v8::HandleScope handle_scope; 
     27    pid_t pid = fork(); 
     28    return v8::Integer::New(pid); 
    2729} 
    2830 
     31v8::Handle<v8::Value> Sleep(const v8::Arguments& args) { 
     32    v8::HandleScope handle_scope; 
     33    sleep( args[1]->Int32Value() || 0 ); 
     34    return v8::Undefined(); 
     35} 
     36 
     37void setup_syscall(v8::Handle<v8::ObjectTemplate> target) { 
     38    target->Set(v8::String::New("mkdir"),  v8::FunctionTemplate::New(Mkdir)); 
     39    target->Set(v8::String::New("fork"),   v8::FunctionTemplate::New(Fork)); 
     40    target->Set(v8::String::New("getenv"), v8::FunctionTemplate::New(GetEnv)); 
     41    target->Set(v8::String::New("sleep"),  v8::FunctionTemplate::New(Sleep)); 
     42} 
     43