Move NavigationURLLoader to UI thread |
|||||||||||||
Issue description(based on several discussions with others. Kinuko assigning to you per our email conversation, please reassign as necessary) To improve performance, we should make NavigationURLLoaderNetworkService run on the UI thread. When running without network service, this will lead to a decrease of thread hops when the main and IO thread are busy. It will also simplify the codebase because we can stop duplicating data between the UI and IO threads. When running with the network service, this will remove unnecessary thread hops. Moving NavigationURLLoaderNetworkService to the UI thread means that we also need to make the existing URLLoaderRequestHandler and URLLoaderThrottle work on the UI thread. I'll file sub bugs to track that effort. ⛆ |
|
|
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
,
Mar 22 2018
The NavigationURLLoaderNetworkService is already running on the UI thread. I guess you are probably talking about removing its URLLoaderRequestController that lives on the IO thread?. Without the network service, we need to be on the IO thread to initiate the request and to receive the ResourceRequestInfoImpl when OnReceiveResponse is called.
,
Mar 22 2018
Correct, I mean that its operation should be on the UI thread. When network service is disabled, we have no choice but to go to the IO thread for ResourceDispatcherHost since that's where net/ runs. But if we can structure everything to live on the UI thread, we avoid extra hops for non network schemes (e.g. extensions, webui), and it sets us up for the network service case
,
May 16 2018
Per conversations with Kinuko and Matt: it'll be too complicated to do this before network service ships (and is the only path). So we'll delay this until then.
,
Jan 11
|
||||||||||
►
Sign in to add a comment |
|||||||||||||
Comment 1 by jam@chromium.org
, Mar 22 2018