{"action":"created","issue":{"url":"https://api.github.com/repos/Particular/NServiceBus/issues/2849","labels_url":"https://api.github.com/repos/Particular/NServiceBus/issues/2849/labels{/name}","comments_url":"https://api.github.com/repos/Particular/NServiceBus/issues/2849/comments","events_url":"https://api.github.com/repos/Particular/NServiceBus/issues/2849/events","html_url":"https://github.com/Particular/NServiceBus/pull/2849","id":104460998,"number":2849,"title":"IWantToRunWhenTheBusStartsAndStops Stop() method made async","user":{"login":"danielmarbach","id":174258,"avatar_url":"https://avatars.githubusercontent.com/u/174258?v=3","gravatar_id":"","url":"https://api.github.com/users/danielmarbach","html_url":"https://github.com/danielmarbach","followers_url":"https://api.github.com/users/danielmarbach/followers","following_url":"https://api.github.com/users/danielmarbach/following{/other_user}","gists_url":"https://api.github.com/users/danielmarbach/gists{/gist_id}","starred_url":"https://api.github.com/users/danielmarbach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielmarbach/subscriptions","organizations_url":"https://api.github.com/users/danielmarbach/orgs","repos_url":"https://api.github.com/users/danielmarbach/repos","events_url":"https://api.github.com/users/danielmarbach/events{/privacy}","received_events_url":"https://api.github.com/users/danielmarbach/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Particular/NServiceBus/labels/Tag:%20Async/Await","name":"Tag: Async/Await","color":"006b75"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/Particular/NServiceBus/milestones/62","html_url":"https://github.com/Particular/NServiceBus/milestones/6.0.0","labels_url":"https://api.github.com/repos/Particular/NServiceBus/milestones/62/labels","id":704266,"number":62,"title":"6.0.0","description":"Setting up deployment process","creator":{"login":"SimonCropp","id":122666,"avatar_url":"https://avatars.githubusercontent.com/u/122666?v=3","gravatar_id":"","url":"https://api.github.com/users/SimonCropp","html_url":"https://github.com/SimonCropp","followers_url":"https://api.github.com/users/SimonCropp/followers","following_url":"https://api.github.com/users/SimonCropp/following{/other_user}","gists_url":"https://api.github.com/users/SimonCropp/gists{/gist_id}","starred_url":"https://api.github.com/users/SimonCropp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SimonCropp/subscriptions","organizations_url":"https://api.github.com/users/SimonCropp/orgs","repos_url":"https://api.github.com/users/SimonCropp/repos","events_url":"https://api.github.com/users/SimonCropp/events{/privacy}","received_events_url":"https://api.github.com/users/SimonCropp/received_events","type":"User","site_admin":false},"open_issues":19,"closed_issues":51,"state":"open","created_at":"2014-06-28T13:41:09Z","updated_at":"2015-09-12T11:09:19Z","due_on":null,"closed_at":null},"comments":5,"created_at":"2015-09-02T11:38:22Z","updated_at":"2015-09-12T11:09:27Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Particular/NServiceBus/pulls/2849","html_url":"https://github.com/Particular/NServiceBus/pull/2849","diff_url":"https://github.com/Particular/NServiceBus/pull/2849.diff","patch_url":"https://github.com/Particular/NServiceBus/pull/2849.patch"},"body":"This PR is part of the work to make the core async enabled. For more background read [Async/Await: It's time!](http://particular.net/blog/async-await-its-time) blogpost\r\n\r\n## Questions\r\n- I used `Task.Run` instead of `StartNew` with `LongRunning` and `PreferFairness` because I think those two parameters are not necessary. The schedular is smart enough. Counter arguments?\r\n- We currently don't have an explicit `Stop()` for the bus. We are using `Dispose()` for stopping the bus. The problem of dispose is that the signature is already predefined. I know we have other cards about starting and stopping the bus but I think in order to move to an asynchronous model we need to at least introduce a `StopAsync` method is part of our work here.\r\n\r\n## Note\r\nThe behavior is preserved from V5.\r\n\r\n@Particular/tf-asyncawait thoughts?\r\n"},"comment":{"url":"https://api.github.com/repos/Particular/NServiceBus/issues/comments/139749468","html_url":"https://github.com/Particular/NServiceBus/pull/2849#issuecomment-139749468","issue_url":"https://api.github.com/repos/Particular/NServiceBus/issues/2849","id":139749468,"user":{"login":"danielmarbach","id":174258,"avatar_url":"https://avatars.githubusercontent.com/u/174258?v=3","gravatar_id":"","url":"https://api.github.com/users/danielmarbach","html_url":"https://github.com/danielmarbach","followers_url":"https://api.github.com/users/danielmarbach/followers","following_url":"https://api.github.com/users/danielmarbach/following{/other_user}","gists_url":"https://api.github.com/users/danielmarbach/gists{/gist_id}","starred_url":"https://api.github.com/users/danielmarbach/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/danielmarbach/subscriptions","organizations_url":"https://api.github.com/users/danielmarbach/orgs","repos_url":"https://api.github.com/users/danielmarbach/repos","events_url":"https://api.github.com/users/danielmarbach/events{/privacy}","received_events_url":"https://api.github.com/users/danielmarbach/received_events","type":"User","site_admin":false},"created_at":"2015-09-12T11:09:27Z","updated_at":"2015-09-12T11:09:27Z","body":"Reopening this one"}}