local function foo(a)
    print("foo: ", a)
    return coroutine.yield(2 * a)
end

local co = coroutine.create(foo)
print(coroutine.resume(co, 1)) -- true, 2 * 1 (注:yield的参数作为resume的额外返回值)

print(coroutine.resume(co, "xyz")) -- true, "xyz" (注:resume的参数作为yield的返回值,foo的返回值又作为resume的额外返回值)

print(coroutine.resume(co)) -- false, "cannot resume dead coroutine"