Bug 173449
| Summary: | [Curl] Use pipe in SocketStreamHandle rather than polling | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Basuke Suzuki <basuke> | 
| Component: | WebCore Misc. | Assignee: | Basuke Suzuki <basuke> | 
| Status: | NEW | ||
| Severity: | Normal | CC: | don.olmstead, fujii.hironori, takashi.komori | 
| Priority: | P2 | ||
| Version: | WebKit Nightly Build | ||
| Hardware: | PC | ||
| OS: | Windows 10 | ||
| See Also: | https://bugs.webkit.org/show_bug.cgi?id=187984 | ||
| Bug Depends on: | 172630 | ||
| Bug Blocks: | |||
          Basuke Suzuki
          
          
          
          
        
        
      Current implementation uses polling by calling ::select with a timeout. It can be better using pipe to wake up the thread when data is waiting to send.
    | Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. | 
          Fujii Hironori
          
          
          
          
        
        
      c++ - How to cancel waiting in select() on Windows - Stack Overflow
https://stackoverflow.com/questions/3333361/how-to-cancel-waiting-in-select-on-windows
    
          Fujii Hironori
          
          
          
          
        
        
      libcurl 7.68.0 added curl_multi_wakeup 
https://curl.haxx.se/libcurl/c/curl_multi_wakeup.html