{"action":"created","issue":{"url":"https://api.github.com/repos/NebulousLabs/Sia/issues/1206","repository_url":"https://api.github.com/repos/NebulousLabs/Sia","labels_url":"https://api.github.com/repos/NebulousLabs/Sia/issues/1206/labels{/name}","comments_url":"https://api.github.com/repos/NebulousLabs/Sia/issues/1206/comments","events_url":"https://api.github.com/repos/NebulousLabs/Sia/issues/1206/events","html_url":"https://github.com/NebulousLabs/Sia/issues/1206","id":157498047,"number":1206,"title":"Suggested New Convention","user":{"login":"DavidVorick","id":2316841,"avatar_url":"https://avatars.githubusercontent.com/u/2316841?v=3","gravatar_id":"","url":"https://api.github.com/users/DavidVorick","html_url":"https://github.com/DavidVorick","followers_url":"https://api.github.com/users/DavidVorick/followers","following_url":"https://api.github.com/users/DavidVorick/following{/other_user}","gists_url":"https://api.github.com/users/DavidVorick/gists{/gist_id}","starred_url":"https://api.github.com/users/DavidVorick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DavidVorick/subscriptions","organizations_url":"https://api.github.com/users/DavidVorick/orgs","repos_url":"https://api.github.com/users/DavidVorick/repos","events_url":"https://api.github.com/users/DavidVorick/events{/privacy}","received_events_url":"https://api.github.com/users/DavidVorick/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":2,"created_at":"2016-05-30T12:58:00Z","updated_at":"2016-05-31T13:01:44Z","closed_at":null,"body":"If you're going to be calling a `threaded` function in a module that's using a `ThreadGroup`, you need to call `tg.Add` before you spawn the goroutine, and then the `threaded` function needs to call `tg.Done` internally once it has closed.\r\n\r\nThis is necessary if we wish to fully enforce that all extra threads be terminated before `Stop()` returns."},"comment":{"url":"https://api.github.com/repos/NebulousLabs/Sia/issues/comments/222681098","html_url":"https://github.com/NebulousLabs/Sia/issues/1206#issuecomment-222681098","issue_url":"https://api.github.com/repos/NebulousLabs/Sia/issues/1206","id":222681098,"user":{"login":"DavidVorick","id":2316841,"avatar_url":"https://avatars.githubusercontent.com/u/2316841?v=3","gravatar_id":"","url":"https://api.github.com/users/DavidVorick","html_url":"https://github.com/DavidVorick","followers_url":"https://api.github.com/users/DavidVorick/followers","following_url":"https://api.github.com/users/DavidVorick/following{/other_user}","gists_url":"https://api.github.com/users/DavidVorick/gists{/gist_id}","starred_url":"https://api.github.com/users/DavidVorick/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DavidVorick/subscriptions","organizations_url":"https://api.github.com/users/DavidVorick/orgs","repos_url":"https://api.github.com/users/DavidVorick/repos","events_url":"https://api.github.com/users/DavidVorick/events{/privacy}","received_events_url":"https://api.github.com/users/DavidVorick/received_events","type":"User","site_admin":false},"created_at":"2016-05-31T13:01:44Z","updated_at":"2016-05-31T13:01:44Z","body":"It interferes with the goal of having all goroutines shut down before the `Stop()` call returns. Exported functions do not spawn threads, they are called from an outside process. Exported functions are blocking, which means their closing responsibility falls on whoever is doing the calling, not on the object being closed."}}
{"actor":{"display_login":"DavidVorick"}}