BindToClose 100% Infinite Yield

Sorry, no. Spent some time on it and could not figure out what exactly the problem was. Will try to prioritize a revisit.

3 Likes

A post was merged into an existing topic: Off-topic and bump posts

This is still happening over a year later, specifically with coroutines.

game:BindToClose(function()
	local Thread = coroutine.running()
	
	delay(1, function()
		coroutine.resume(Thread)	
	end)
	
	coroutine.yield()
end)

This is related to another issue that we are aware of After resuming a Wait() thread, wait() no longer functions properly - #8 by woot3

I’ll post an update on that thread once we have a solution.

I can try to send some more time on it and see if I get anywhere. Stay tuned.

4 Likes

This has started happening again for me and another user. Just this:

game:BindToClose(function()
	print("start")
	wait(1)
	print("end")
end)

prints start once, and throws Not running script because past shutdown deadline (x3).

cc @CycloneUprising

17 Likes

This is occuring in one of my new projects too.

6 Likes

This is happening to me as well, thought I was going crazy but pinned it down to my UpdateAsync call on BindToClose. Very frustrating!

edit: this appears fixed again

edit2: nope, it’s happening again

8 Likes

Also experiencing this - sucks to have my game crash several times in studio and to not know what was causing it! Please prioritize fixing this, thanks!

2 Likes

This has been occurring in my projects as well, unfortunate as it is slowing down development due to studio freezing for 30+ seconds each time I want to test out a new change.

4 Likes

Same. Wasted lot of time pinning down this issue since I haven’t updated my BindToClose script recently.

2 Likes

Getting this again as well. It’s making it very hard to test since I have to wait 30 seconds after finishing any testing.

6 Likes

I can confirm this issue is still happening.

1 Like

This is now happening in a bunch of games I develop, slowing down the process extremely. Some of these games I definitely haven’t updated for awhile and they are suddenly all exhibiting this behavior.

4 Likes

This is happening to me again suddenly.

3 Likes

This occurs for me too. I never recognized what exactly caused it, but I had used Datastore 2 (the module by kampfkarren) and now that you’ve pointed that out, I believe his script uses the same BindToClose function and is likely the cause of this for me as well.

1 Like

image

This is happening to me again now, I haven’t made any changes to my data store script today.
I haven’t had any problems with this for quite a while.

image

2 Likes

I also experience the same errors. This is only while testing in studio right? Or does it affect real servers too?

I have the same question, does this behavior also happen in live servers or is this only in Studio instances ?

Can confirm we’re also experiencing this. It looks like if you have anything inside :BindToClose() that yields even briefly it causes the thread to yield infinitely. This only started happening a couple days ago for us.

game:BindToClose(function()
	if(game["Run Service"]:IsStudio()) then
		wait() -- this breaks it
	end
end)

5 Likes