Fixed threadpool bug when running on single core systems.

*Thanks to freshman for reporting bug.
This commit is contained in:
NoodleDoodleNoodleDoodleNoodleDoodleNoo 2015-07-17 20:02:29 -07:00
parent 464dbe7379
commit 70ae2ee711
1 changed files with 8 additions and 5 deletions

View File

@ -2009,10 +2009,13 @@ bool Blockchain::check_tx_inputs(const transaction& tx, uint64_t* pmax_used_bloc
boost::thread_group threadpool; boost::thread_group threadpool;
std::auto_ptr < boost::asio::io_service::work > work(new boost::asio::io_service::work(ioservice)); std::auto_ptr < boost::asio::io_service::work > work(new boost::asio::io_service::work(ioservice));
if(threads > 1)
{
for (int i = 0; i < threads; i++) for (int i = 0; i < threads; i++)
{ {
threadpool.create_thread(boost::bind(&boost::asio::io_service::run, &ioservice)); threadpool.create_thread(boost::bind(&boost::asio::io_service::run, &ioservice));
} }
}
#define KILL_IOSERVICE() \ #define KILL_IOSERVICE() \
if(threads > 1) \ if(threads > 1) \