首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Luau Couroutine停止线程

Luau Couroutine停止线程
EN

Stack Overflow用户
提问于 2022-07-30 06:00:15
回答 1查看 72关注 0票数 0

我正在尝试做一个OnChange事件侦听器,我想使用coroutines来轮询循环中的值,看看它是否改变了,所以

代码语言:javascript
复制
function Changed(Value)
    local StartingValue = Value
    while true do
        if StartingValue ~= Value then
            print(Value)
            StartingValue = Value
            break
        end
    end
end
local n = 0
local co = coroutine.wrap(function()
    Changed(n)
    coroutine.yield()
end)
co()

n = (n + 1)
print("Script ended")

是我现在想到的密码,但它被困在了Coroutine..。在co()之后什么都不会发生

到底怎么回事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-30 08:38:56

函数Changed()永远不会返回。

在一开始,您将Value分配给StartingValue,而break位于if语句中,只有在值不同时才执行该语句。但并不是因为最初的任务。所以你有一个无限的循环,它没有结束的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73173230

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档