{"action":"created","issue":{"url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/43","repository_url":"https://api.github.com/repos/RichieSams/FiberTaskingLib","labels_url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/43/labels{/name}","comments_url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/43/comments","events_url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/43/events","html_url":"https://github.com/RichieSams/FiberTaskingLib/issues/43","id":286143468,"number":43,"title":"EmptyQueueBehavior::Sleep on Mac OS X never wakes","user":{"login":"djdduty","id":1041100,"avatar_url":"https://avatars1.githubusercontent.com/u/1041100?v=4","gravatar_id":"","url":"https://api.github.com/users/djdduty","html_url":"https://github.com/djdduty","followers_url":"https://api.github.com/users/djdduty/followers","following_url":"https://api.github.com/users/djdduty/following{/other_user}","gists_url":"https://api.github.com/users/djdduty/gists{/gist_id}","starred_url":"https://api.github.com/users/djdduty/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/djdduty/subscriptions","organizations_url":"https://api.github.com/users/djdduty/orgs","repos_url":"https://api.github.com/users/djdduty/repos","events_url":"https://api.github.com/users/djdduty/events{/privacy}","received_events_url":"https://api.github.com/users/djdduty/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":11,"created_at":"2018-01-04T23:18:40Z","updated_at":"2018-02-10T19:34:14Z","closed_at":null,"author_association":"NONE","body":"Since I'm running a game main loop which creates tasks that update game engine systems, if the loop is constrained by vsync then there will be gaps where no tasks exist. Because of this I wanted to define the empty queue behavior to either sleep the threads OTHER than the thread processing the main loop until the main loop creates more tasks or yield to the os. Using the new_empty_queue_behavior branch.\r\n\r\nUsing Mac OS X, EmptyQueueBehavior::Yield doesn't seem to effect thread usage at all, all threads remain at 100% except the one running the main loop which sleeps a bit after swapping the back buffer if vsync is enabled. EmptyQueueBehavior::Sleep seems to halt the program entirely. It doesn't even make it through one full iteration of the main loop. I suspect the condition variable is never waking the threads back up and when the main task does `taskScheduler->WaitForCounter(...);` it just halts forever and never returns."},"comment":{"url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/comments/364683112","html_url":"https://github.com/RichieSams/FiberTaskingLib/issues/43#issuecomment-364683112","issue_url":"https://api.github.com/repos/RichieSams/FiberTaskingLib/issues/43","id":364683112,"user":{"login":"RichieSams","id":745424,"avatar_url":"https://avatars2.githubusercontent.com/u/745424?v=4","gravatar_id":"","url":"https://api.github.com/users/RichieSams","html_url":"https://github.com/RichieSams","followers_url":"https://api.github.com/users/RichieSams/followers","following_url":"https://api.github.com/users/RichieSams/following{/other_user}","gists_url":"https://api.github.com/users/RichieSams/gists{/gist_id}","starred_url":"https://api.github.com/users/RichieSams/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/RichieSams/subscriptions","organizations_url":"https://api.github.com/users/RichieSams/orgs","repos_url":"https://api.github.com/users/RichieSams/repos","events_url":"https://api.github.com/users/RichieSams/events{/privacy}","received_events_url":"https://api.github.com/users/RichieSams/received_events","type":"User","site_admin":false},"created_at":"2018-02-10T19:34:14Z","updated_at":"2018-02-10T19:34:14Z","author_association":"OWNER","body":"Can you test if the newest changes have fixed this?"}}
{"actor":{"display_login":"RichieSams"}}