[Webkit-unassigned] [Bug 106761] [Qt] Using sleep to delay in http server reponse causes QtWebKit page loading blocked

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jan 23 17:49:26 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=106761


Chen Zhixiang <chenzx at cn.fujitsu.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |UNCONFIRMED
         Resolution|INVALID                     |




--- Comment #14 from Chen Zhixiang <chenzx at cn.fujitsu.com>  2013-01-23 17:51:19 PST ---
I can't agree with you. Both solutions you provide doesn't meets our internal project needs:

(1)User can setup a timeout timer outside QtNetwork & QtWebKit, but it will be hard to monitor at each socket level, and if user want to close http request due to server response delay, he can not controll everything at detailed level;
(2)TCP keepalive may be nice, but the 2 scenes are different: in my case, the under TCP connection is good, the server just didn't want to response in time, the client had to make out a method to "auto read timeout", to avoid long waiting in non-blocking mode.

I've add a 4th type "ReadTimeout" in QSocketNotifier which is in QtCore, and add a subclass QReadTimeoutNotifier which is in QtNetwork, I use a QTimer to `watchdog` every socket. I patched a lot of files really. Everything is good: if the timer timeout, it will notify the socket io thread.

My now problem is: Qt's class hierarchies is wierd: there is a `QNetworkReply` and a `QHttpNetworkReply`, the demos/browser uses `QNetworkReply`, but i can not find a connection how socket read timeout error reaches demos/browser with Qt's signal-slot mechanism.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the webkit-unassigned mailing list