{"action":"created","issue":{"url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/12","repository_url":"https://api.github.com/repos/tokio-rs/tokio-core","labels_url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/12/labels{/name}","comments_url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/12/comments","events_url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/12/events","html_url":"https://github.com/tokio-rs/tokio-core/issues/12","id":174636584,"number":12,"title":"Recv from channel hangs forever if other party is gone","user":{"login":"stepancheg","id":28969,"avatar_url":"https://avatars.githubusercontent.com/u/28969?v=3","gravatar_id":"","url":"https://api.github.com/users/stepancheg","html_url":"https://github.com/stepancheg","followers_url":"https://api.github.com/users/stepancheg/followers","following_url":"https://api.github.com/users/stepancheg/following{/other_user}","gists_url":"https://api.github.com/users/stepancheg/gists{/gist_id}","starred_url":"https://api.github.com/users/stepancheg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stepancheg/subscriptions","organizations_url":"https://api.github.com/users/stepancheg/orgs","repos_url":"https://api.github.com/users/stepancheg/repos","events_url":"https://api.github.com/users/stepancheg/events{/privacy}","received_events_url":"https://api.github.com/users/stepancheg/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2016-09-01T22:01:50Z","updated_at":"2016-09-02T03:15:18Z","closed_at":null,"body":"Code:\r\n\r\n```\r\nextern crate tokio_core;\r\nextern crate futures;\r\n\r\nuse tokio_core::Loop;\r\n\r\nuse futures::stream::Stream;\r\n\r\n\r\n#[test]\r\nfn recv_after_close() {\r\n    let mut lp: Loop = Loop::new().unwrap();\r\n\r\n    let (sender, receiver) = lp.handle().channel::<u32>();\r\n\r\n    let receiver = lp.run(receiver).unwrap();\r\n\r\n    drop(lp);\r\n    drop(sender);\r\n\r\n    receiver.wait().next();\r\n}\r\n```\r\n\r\nThis test hangs. I cannot tell for sure, but seems like it worked (i. e. did not hang) two days ago."},"comment":{"url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/comments/244272905","html_url":"https://github.com/tokio-rs/tokio-core/issues/12#issuecomment-244272905","issue_url":"https://api.github.com/repos/tokio-rs/tokio-core/issues/12","id":244272905,"user":{"login":"alexcrichton","id":64996,"avatar_url":"https://avatars.githubusercontent.com/u/64996?v=3","gravatar_id":"","url":"https://api.github.com/users/alexcrichton","html_url":"https://github.com/alexcrichton","followers_url":"https://api.github.com/users/alexcrichton/followers","following_url":"https://api.github.com/users/alexcrichton/following{/other_user}","gists_url":"https://api.github.com/users/alexcrichton/gists{/gist_id}","starred_url":"https://api.github.com/users/alexcrichton/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexcrichton/subscriptions","organizations_url":"https://api.github.com/users/alexcrichton/orgs","repos_url":"https://api.github.com/users/alexcrichton/repos","events_url":"https://api.github.com/users/alexcrichton/events{/privacy}","received_events_url":"https://api.github.com/users/alexcrichton/received_events","type":"User","site_admin":false},"created_at":"2016-09-02T03:15:18Z","updated_at":"2016-09-02T03:15:18Z","body":"Oh sorry, to clarify I mean that for an I/O object to work the event loop it came from must still be alive somewhere. That is, because you drop `lp`, the `receiver` here won't work regardless of what happens next.\r\n\r\nHow come the event loop is dropping early for you? It's intended that event loops are very long lived (for the entire lifetime of a program), and it's only cleaned up once the entire world is being torn down."}}
{"actor":{"display_login":"alexcrichton"}}