/* u3_unix_io_talk(): start listening for fs events. */ void u3_unix_io_talk() { u3_unix_acquire(u3_Host.dir_c); u3_unix_ef_move(); uv_check_start(&u3_Host.unx_u.syn_u, _unix_ef_sync); }
static PyObject * Check_func_start(Check *self, PyObject *args) { int err; PyObject *tmp, *callback; tmp = NULL; RAISE_IF_HANDLE_NOT_INITIALIZED(self, NULL); RAISE_IF_HANDLE_CLOSED(self, PyExc_HandleClosedError, NULL); if (!PyArg_ParseTuple(args, "O:start", &callback)) { return NULL; } if (!PyCallable_Check(callback)) { PyErr_SetString(PyExc_TypeError, "a callable is required"); return NULL; } err = uv_check_start(&self->check_h, on_check_callback); if (err < 0) { RAISE_UV_EXCEPTION(err, PyExc_CheckError); return NULL; } tmp = self->callback; Py_INCREF(callback); self->callback = callback; Py_XDECREF(tmp); PYUV_HANDLE_INCREF(self); Py_RETURN_NONE; }
/* u2_unix_io_talk(): start listening for fs events. */ void u2_unix_io_talk() { u2_unix_acquire(u2_Host.cpu_c); u2_unix_ef_move(); uv_check_start(&u2_Host.unx_u.syn_u, _unix_ef_sync); }
static int luv_check_start(lua_State* L) { uv_check_t* handle = luv_check_check(L, 1); int ret; luv_check_callback(L, (luv_handle_t *)handle->data, LUV_CHECK, 2); ret = uv_check_start(handle, luv_check_cb); if (ret < 0) return luv_error(L, ret); lua_pushinteger(L, ret); return 1; }
/* * Class: com_oracle_libuv_handles_CheckHandle * Method: _start * Signature: (J)I */ JNIEXPORT jint JNICALL Java_com_oracle_libuv_handles_CheckHandle__1start (JNIEnv *env, jobject that, jlong check) { assert(check); uv_check_t* handle = reinterpret_cast<uv_check_t*>(check); int r = uv_check_start(handle, _check_cb); if (r) { ThrowException(env, handle->loop, "uv_check_start"); } return r; }
CAMLprim value camluv_check_start(value check, value check_cb) { CAMLparam2(check, check_cb); CAMLlocal1(camluv_rc); int rc = -1; camluv_check_t *camluv_check = camluv_check_struct_val(check); camluv_check->check_cb = check_cb; rc = uv_check_start(&(camluv_check->uv_check), camluv_check_cb); camluv_rc = camluv_errno_c2ml(rc); CAMLreturn(camluv_rc); }
static int start_check (lua_State *L) { int ret = 0; int ref_ret = LUA_REFNIL; libuv_check_t *check = NULL; TRACE("arguments: L = %p\n", L); assert(L != NULL); /* [ userdata, function ] */ assert(lua_gettop(L) == 2); /* get callback argument */ luaL_checktype(L, 2, LUA_TFUNCTION); lua_getfenv(L, 1); /* [ userdata, function, env_table ] */ lua_pushvalue(L, 2); /* [ userdata, function, env_table, function ] */ lua_remove(L, 2); /* [ userdata, env_table, function ] */ lua_setfield(L, -2, "on_check"); /* [ userdata, env_table ] */ lua_pop(L, 1); /* [ userdata ] */ /* get self argument */ check = (libuv_check_t *)luaL_checkudata(L, 1, CHECK_T); TRACE("get libuv_check_t (%p)\n", check); assert(check != NULL); assert(check->uvcheck != NULL); check->uvcheck->data = check; assert(check->uvcheck->data != NULL); /* execute uv_check_start */ ret = uv_check_start(check->uvcheck, on_check); TRACE("uv_check_start: ret = %d\n", ret); /* set reference */ TRACE("referencing uv_check_t\n"); ref_ret = luaL_ref(L, LUA_REGISTRYINDEX); if (ref_ret == LUA_REFNIL) { /* TODO: error */ fprintf(stderr, "FAIELD luaL_ref !!"); return 0; } check->ref = ref_ret; TRACE("libuv_check_t attributes: uvcheck = %p, L = %p, ref = 0x%012x\n", check->uvcheck, check->L, check->ref); /* set return */ lua_pushinteger(L, ret); /* [ userdata, number ] */ return 1; }