dogecoin/src
Huang Le caf6150e97 Use async name resolving to improve net thread responsiveness
In the LookupIntern(), things changed are:

  1. Call getaddrinfo_a() instead of getaddrinfo() if available, the former is a sync version of the latter;
  2. Try using inet_pton()/inet_addr() to convert the input text to a network addr structure at first, if success the extra name resolving thread inside getaddrinfo_a() could be avoided;
  3.  An interruption point added in the waiting loop for return from getaddrinfo_a(), which completes the improve for thread responsiveness.

A easy way to see the effect is to kick off a 'bitcoind stop' immediately after 'bitcoind -daemon', before the change it would take several, or even tens of, minutes on a bad network situation to wait for the running bitcoind to exit, now it costs only seconds.

Signed-off-by: Huang Le <4tarhl@gmail.com>
2014-06-27 02:55:39 +08:00
..
compat build: fix build weirdness after 54372482. 2014-06-23 14:04:38 -04:00
config build: move bitcoin-config.h to its own directory 2014-06-21 19:47:43 +02:00
crypto Add <Hasher>::OUTPUT_SIZE 2014-06-21 19:47:43 +02:00
json json_spirit: #include <stdint.h> 2014-05-13 11:41:59 +02:00
leveldb Merge src/leveldb changes for LevelDB 1.17. 2014-05-09 18:23:34 +02:00
m4 build: avoid the use of top_ and abs_ dir paths 2014-06-05 16:05:57 -04:00
obj
obj-test
qt Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
test Remove timing-based signature cache unit test 2014-06-25 14:57:21 -04:00
addrman.cpp Remove redundant .c_str()s 2014-01-23 16:05:01 +01:00
addrman.h Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
alert.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
alert.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
allocators.cpp Changing LockedPageManager to use a managed instance 2013-10-20 14:29:24 +07:00
allocators.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
base58.cpp base58: add paranoid return value checks 2014-06-11 23:20:37 -04:00
base58.h Move base58.h implementation code to base58.cpp 2014-05-10 00:42:31 +02:00
bitcoin-cli-res.rc qt: Update remaining "The Bitcoin Core Developers" 2014-01-14 11:19:52 +01:00
bitcoin-cli.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
bitcoind-res.rc qt: Update remaining "The Bitcoin Core Developers" 2014-01-14 11:19:52 +01:00
bitcoind.cpp Remove cli functionality from bitcoind 2014-06-15 15:38:22 +02:00
bloom.cpp Code simplifications after CTransaction::GetHash() caching 2014-06-22 00:06:17 +02:00
bloom.h Code simplifications after CTransaction::GetHash() caching 2014-06-22 00:06:17 +02:00
chainparams.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
chainparams.h Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
chainparamsbase.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
chainparamsbase.h Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
checkpoints.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
checkpoints.h [Qt] rescan progress 2014-04-02 03:48:07 +02:00
checkqueue.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
clientversion.h build: fix build weirdness after 54372482. 2014-06-23 14:04:38 -04:00
coincontrol.h Coincontrol cleanup (e.g. add missing license) 2013-11-18 08:16:12 +01:00
coins.cpp Add verbose boolean to getrawmempool 2013-11-30 15:42:10 +10:00
coins.h Add verbose boolean to getrawmempool 2013-11-30 15:42:10 +10:00
compat.h reorder includes to compile on OpenBSD 2014-05-02 20:45:03 +02:00
core.cpp Add CMutableTransaction and make CTransaction immutable. 2014-06-21 22:59:03 +02:00
core.h Code simplifications after CTransaction::GetHash() caching 2014-06-22 00:06:17 +02:00
crypter.cpp Move CCryptoKeyStore to crypter.cpp 2013-12-04 12:46:13 +01:00
crypter.h Move CCryptoKeyStore to crypter.cpp 2013-12-04 12:46:13 +01:00
db.cpp unified and better log/error messages for CDBEnv/CDB 2014-04-01 09:41:49 +02:00
db.h Move CAddrDB frrom db to net 2013-12-04 12:46:13 +01:00
hash.cpp Add a built-in SHA256/SHA512 implementation. 2014-06-21 19:47:39 +02:00
hash.h Add <Hasher>::OUTPUT_SIZE 2014-06-21 19:47:43 +02:00
init.cpp Add an option to allow users to disable relaying/mining data carrier transactions 2014-06-26 14:31:06 +00:00
init.h Add 'about' information to -version output 2014-06-12 16:11:56 +02:00
key.cpp Move crypto implementations to src/crypto/ 2014-06-21 19:47:42 +02:00
key.h key.cpp: fail with a friendlier message on missing ssl EC support 2014-06-03 12:09:51 -07:00
keystore.cpp Check redeemScript size does not exceed 520 byte limit 2014-05-08 00:55:01 -04:00
keystore.h Update moved and dead links 2014-03-24 20:26:02 +00:00
leveldbwrapper.cpp Wrap create_directory calls in try...catch blocks. 2014-03-31 09:51:58 +02:00
leveldbwrapper.h Remove redundant c_str 2014-05-22 00:23:03 +07:00
limitedmap.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
main.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
main.h Refactor proof of work related functions out of main 2014-06-23 23:10:24 +02:00
Makefile.am Move coins.cpp and keystore.cpp to libbitcoin_common 2014-06-25 10:31:35 +02:00
Makefile.qt.include Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
Makefile.qttest.include Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
Makefile.test.include Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
miner.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
miner.h Switch miner.cpp to use sha2 instead of OpenSSL. 2014-06-21 19:47:39 +02:00
mruset.h Limit number of known addresses per peer 2014-05-30 12:01:53 +02:00
net.cpp build: fix build weirdness after 54372482. 2014-06-23 14:04:38 -04:00
net.h Merge pull request #4388 2014-06-23 10:21:38 +02:00
netbase.cpp Use async name resolving to improve net thread responsiveness 2014-06-27 02:55:39 +08:00
netbase.h build: fix build weirdness after 54372482. 2014-06-23 14:04:38 -04:00
noui.cpp Copyright header updates s/2013/2014 on files whose last git commit was done in 2014. 2014-02-09 21:06:06 -05:00
noui.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
pow.cpp move pow constants to chainparams 2014-06-23 23:10:24 +02:00
pow.h Refactor proof of work related functions out of main 2014-06-23 23:10:24 +02:00
protocol.cpp Replace virtual methods with static attributes, chainparams.h depends on 2014-06-04 13:29:36 +02:00
protocol.h Add comment regarding experimental-use service bits 2014-06-21 11:43:23 -04:00
rpcblockchain.cpp Add "chain" to getmininginfo, improve help in getblockchaininfo 2014-06-17 13:11:36 +02:00
rpcclient.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
rpcclient.h Remove cli functionality from bitcoind 2014-06-15 15:38:22 +02:00
rpcdump.cpp [Qt] importwallet progress 2014-04-23 01:50:25 +02:00
rpcmining.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
rpcmisc.cpp Remove unnecessary dependencies for bitcoin-cli 2014-06-25 10:31:35 +02:00
rpcnet.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
rpcprotocol.cpp Replace non-threadsafe gmtime and setlocale 2014-05-23 15:23:11 +02:00
rpcprotocol.h Support IPv6 lookup in bitcoin-cli even when IPv6 only bound on localhost 2014-05-13 07:23:23 +02:00
rpcrawtransaction.cpp Code simplifications after CTransaction::GetHash() caching 2014-06-22 00:06:17 +02:00
rpcserver.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
rpcserver.h JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
rpcwallet.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
script.cpp Add an option to allow users to disable relaying/mining data carrier transactions 2014-06-26 14:31:06 +00:00
script.h Remove timing-based signature cache unit test 2014-06-25 14:57:21 -04:00
serialize.h Avoid undefined behavior using CFlatData in CScript serialization 2014-06-23 10:38:15 +02:00
sync.cpp Wallet locking fixes for -DDEBUG_LOCKORDER 2014-02-18 12:11:46 -05:00
sync.h Use mutex pointer instead of name for AssertLockHeld 2013-12-19 09:46:11 +01:00
threadsafety.h Cleanup code using forward declarations. 2013-11-10 09:36:28 -06:00
timedata.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
timedata.h Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
tinyformat.h Make tinyformat errors raise an exception instead of assert()ing 2014-02-28 09:25:00 +01:00
txdb.cpp Refactor proof of work related functions out of main 2014-06-23 23:10:24 +02:00
txdb.h Move {Get,Set}Compact from bignum to uint256 2014-05-09 16:44:59 +02:00
txmempool.cpp JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
txmempool.h JSON-RPC method: prioritisetransaction <txid> <priority delta> <priority tx fee> 2014-06-26 11:49:46 +00:00
ui_interface.h VerifyDB progress 2014-06-03 15:21:47 +02:00
uint256.h Deduplicate uint* comparison operator logic 2014-05-09 16:45:00 +02:00
util.cpp Merge pull request #4392 2014-06-26 17:11:53 +02:00
util.h Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
version.cpp Remove -beta suffix 2014-06-12 13:52:15 +02:00
version.h Bump protocol version to 70002 2013-11-11 10:31:09 +10:00
wallet.cpp Move network-time related functions to timedata.cpp/h 2014-06-25 09:24:50 +02:00
wallet.h Merge pull request #3674 2014-06-24 17:04:52 +02:00
walletdb.cpp Let -zapwallettxes recover transaction meta data 2014-06-16 18:56:57 +02:00
walletdb.h Let -zapwallettxes recover transaction meta data 2014-06-16 18:56:57 +02:00