{"action":"created","issue":{"url":"https://api.github.com/repos/NetEase/libpomelo2/issues/72","repository_url":"https://api.github.com/repos/NetEase/libpomelo2","labels_url":"https://api.github.com/repos/NetEase/libpomelo2/issues/72/labels{/name}","comments_url":"https://api.github.com/repos/NetEase/libpomelo2/issues/72/comments","events_url":"https://api.github.com/repos/NetEase/libpomelo2/issues/72/events","html_url":"https://github.com/NetEase/libpomelo2/issues/72","id":194900737,"number":72,"title":"ret = client->trans->cleanup(client->trans); windows下一直block住无法结束，慢慢的单步执行可以过去。","user":{"login":"uiopwang","id":11325164,"avatar_url":"https://avatars.githubusercontent.com/u/11325164?v=3","gravatar_id":"","url":"https://api.github.com/users/uiopwang","html_url":"https://github.com/uiopwang","followers_url":"https://api.github.com/users/uiopwang/followers","following_url":"https://api.github.com/users/uiopwang/following{/other_user}","gists_url":"https://api.github.com/users/uiopwang/gists{/gist_id}","starred_url":"https://api.github.com/users/uiopwang/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uiopwang/subscriptions","organizations_url":"https://api.github.com/users/uiopwang/orgs","repos_url":"https://api.github.com/users/uiopwang/repos","events_url":"https://api.github.com/users/uiopwang/events{/privacy}","received_events_url":"https://api.github.com/users/uiopwang/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":9,"created_at":"2016-12-12T06:34:54Z","updated_at":"2016-12-14T06:21:38Z","closed_at":null,"body":"使用的这个版本\r\ncommit 63e4ffdb1569cad58cb3f46aaec137cf59d07133\r\nAuthor: Xpol Wan <xpolife@gmail.com>\r\nDate:   Fri Apr 29 10:36:55 2016 +0800\r\n\r\n    pc_trans: split sync and async code in pc_tranc.c into different functions.\r\n\r\n\r\n环境VS2015社区版,集成到cocos2dx中遇到这个问题。\r\n\r\n\r\n/*\r\n     * when cleaning transport up, transport should ack all\r\n     * the request it holds from client so that client can release them\r\n     *\r\n     * transport->cleanup may be blocking.\r\n     */\r\n    ret = client->trans->cleanup(client->trans);\r\n    if (ret != PC_RC_OK) {\r\n        pc_lib_log(PC_LOG_ERROR, \"pc_client_cleanup - transport cleanup error: %s\", pc_client_rc_str(ret));\r\n        return ret;\r\n    }"},"comment":{"url":"https://api.github.com/repos/NetEase/libpomelo2/issues/comments/266953046","html_url":"https://github.com/NetEase/libpomelo2/issues/72#issuecomment-266953046","issue_url":"https://api.github.com/repos/NetEase/libpomelo2/issues/72","id":266953046,"user":{"login":"cynron","id":4964823,"avatar_url":"https://avatars.githubusercontent.com/u/4964823?v=3","gravatar_id":"","url":"https://api.github.com/users/cynron","html_url":"https://github.com/cynron","followers_url":"https://api.github.com/users/cynron/followers","following_url":"https://api.github.com/users/cynron/following{/other_user}","gists_url":"https://api.github.com/users/cynron/gists{/gist_id}","starred_url":"https://api.github.com/users/cynron/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cynron/subscriptions","organizations_url":"https://api.github.com/users/cynron/orgs","repos_url":"https://api.github.com/users/cynron/repos","events_url":"https://api.github.com/users/cynron/events{/privacy}","received_events_url":"https://api.github.com/users/cynron/received_events","type":"User","site_admin":false},"created_at":"2016-12-14T06:21:37Z","updated_at":"2016-12-14T06:21:37Z","body":"@uiopwang \r\n\r\n1. 从你提供出来的信息看，问题可以表述为 当cleanup的时候，主线程调用uv_thread_join, 等待uv线程结束，然后uv线程一直没有退出，造成的问题\r\n2. 单单一个截图只能说明uv线程堵在 uv_poll_ex上，但是不排除此时uv线程还在正常运行，你可以不停地continue，break，看看这个线程的堆栈是不是有变化，如果一直没有变化的话，才可以确定是不是一定卡在uv_poll_ex上，看看uv线程是不是很无法从uv_poll_ex上返回，还是返回后又进来了。现在你有代码，是很容易调试的。可以在uv_poll_ex上打断点，也可以在uv_run上打断点\r\n3. 通过上面的调试，可以确定是不是uv本身的问题，还是uv在windows上的问题等等.....,这个需要你自己确认\r\n4. 我自己本身没有windows开发环境，也没太多时间去跟踪，对windows的底层也不熟悉，没法提供更多帮助"}}
{"actor":{"display_login":"cynron"}}