diff options
author | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-19 18:23:25 +0000 |
---|---|---|
committer | phajdan.jr@chromium.org <phajdan.jr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-02-19 18:23:25 +0000 |
commit | 1933eb200c4bb16e4df535d779c98561f85c1e25 (patch) | |
tree | 0ec1fe2dc176b2159abf8e33c53eaf940fb310c4 /net/base | |
parent | fd599eeeddf2a57a2b2d70e63725106ce93c4591 (diff) | |
download | chromium_src-1933eb200c4bb16e4df535d779c98561f85c1e25.zip chromium_src-1933eb200c4bb16e4df535d779c98561f85c1e25.tar.gz chromium_src-1933eb200c4bb16e4df535d779c98561f85c1e25.tar.bz2 |
Clean up dns prefetch code, and also port it.
- remove slave threads and use HostResolver in asynchronous mode instead (while still limiting number of concurrent lookups)
- make the implementation portable and make DnsMaster unit test compile and pass on Linux
- add more tests to DnsMaster unit test to simulate various shutdown scenarios, concurrent lookups, and to verify that we don't exceed our limit of concurrent lookup requests)
- remove some tests which relied on specifics of slaves' inner working
- adjust initialization and shutdown of dns prefetching (now it relies on the IO message loop being present)
Bonus: shutdown is almost instant now, no need to have a timeout.
BUG=5687, 6683
Review URL: http://codereview.chromium.org/15076
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10021 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base')
-rw-r--r-- | net/base/host_resolver.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/net/base/host_resolver.h b/net/base/host_resolver.h index bfae53c..6e61eb5 100644 --- a/net/base/host_resolver.h +++ b/net/base/host_resolver.h @@ -41,10 +41,9 @@ class HostResolver { // // When callback is null, the operation completes synchronously. // - // When callback is non-null, ERR_IO_PENDING is returned if the operation - // could not be completed synchronously, in which case the result code will - // be passed to the callback when available. - // + // When callback is non-null, the operation will be performed asynchronously. + // ERR_IO_PENDING is returned if it has been scheduled successfully. Real + // result code will be passed to the completion callback. int Resolve(const std::string& hostname, int port, AddressList* addresses, CompletionCallback* callback); |