Esempio n. 1
0
static int
lyield_co(lua_State *L) {
	luaL_checktype(L, 1, LUA_TTHREAD);
	lua_rotate(L, 1, -1);
	
	return timing_yield(L);
}
Esempio n. 2
0
static int
lyield(lua_State *L) {
	// printf("%s(%d): %d\n", __FUNCTION__, __LINE__, lua_gettop(L));
	lua_pushthread(L);

	return timing_yield(L);
}
Esempio n. 3
0
static int
lyield_co(lua_State *L) {
	// printf("%s(%d): %d\n", __FUNCTION__, __LINE__, lua_gettop(L));
	luaL_checktype(L, 1, LUA_TTHREAD); // 检查类型, 不是协程会挂,不会增加stack
	lua_rotate(L, 1, -1); // 把1指向的协程放到栈顶
	
	return timing_yield(L);
}
Esempio n. 4
0
static int
lyield(lua_State *L) {
	lua_pushthread(L);

	return timing_yield(L);
}