fir mining properly. Revert all proclimits to 1 or -1, as they are in zcash. also on shutdown, the pos64 was starting a new thread and then seg faulting, this stops that.

This commit is contained in:
blackjok3r
2018-12-17 12:25:53 +08:00
parent 2a9543eef3
commit a2d19feeba
6 changed files with 161 additions and 158 deletions

View File

@@ -1441,7 +1441,7 @@ void static BitcoinMiner()
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET
// notaries always default to staking // notaries always default to staking
CBlockTemplate *ptr = CreateNewBlockWithKey(reservekey, pindexPrev->GetHeight()+1, gpucount, ASSETCHAINS_STAKED != 0 && GetArg("-genproclimit", 0) == 0); CBlockTemplate *ptr = CreateNewBlockWithKey(reservekey, pindexPrev->GetHeight()+1, gpucount, ASSETCHAINS_STAKED != 0 && GetArg("-genproclimit", -1) == 0);
#else #else
CBlockTemplate *ptr = CreateNewBlockWithKey(); CBlockTemplate *ptr = CreateNewBlockWithKey();
#endif #endif
@@ -1831,7 +1831,7 @@ void static BitcoinMiner()
} }
//fprintf(stderr,"nThreads.%d fGenerate.%d\n",(int32_t)nThreads,fGenerate); //fprintf(stderr,"nThreads.%d fGenerate.%d\n",(int32_t)nThreads,fGenerate);
if ( ASSETCHAINS_STAKED > 0 && nThreads == 0 ) if ( ASSETCHAINS_STAKED > 0 && nThreads == 0 && fGenerate )
{ {
if ( pwallet != NULL ) if ( pwallet != NULL )
nThreads = 1; nThreads = 1;

View File

@@ -339,22 +339,25 @@ UniValue setgenerate(const UniValue& params, bool fHelp)
//if (nGenProcLimit == 0) //if (nGenProcLimit == 0)
// fGenerate = false; // fGenerate = false;
} }
if ( ASSETCHAINS_LWMAPOS != 0 )
if (fGenerate && !nGenProcLimit)
{ {
VERUS_MINTBLOCKS = 1; if (fGenerate && !nGenProcLimit)
fGenerate = GetBoolArg("-gen", false); {
if ( ASSETCHAINS_STAKED == 0 ) VERUS_MINTBLOCKS = 1;
nGenProcLimit = KOMODO_MININGTHREADS; fGenerate = GetBoolArg("-gen", false);
else
KOMODO_MININGTHREADS = nGenProcLimit; KOMODO_MININGTHREADS = nGenProcLimit;
}
else if (!fGenerate)
{
VERUS_MINTBLOCKS = 0;
KOMODO_MININGTHREADS = 0;
}
else KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
} }
else if (!fGenerate) else
{ {
VERUS_MINTBLOCKS = 0; KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
KOMODO_MININGTHREADS = 0;
} }
else KOMODO_MININGTHREADS = (int32_t)nGenProcLimit;
mapArgs["-gen"] = (fGenerate ? "1" : "0"); mapArgs["-gen"] = (fGenerate ? "1" : "0");
mapArgs ["-genproclimit"] = itostr(KOMODO_MININGTHREADS); mapArgs ["-genproclimit"] = itostr(KOMODO_MININGTHREADS);

View File

@@ -169,9 +169,9 @@ void AsyncRPCOperation_sendmany::main() {
#ifdef ENABLE_MINING #ifdef ENABLE_MINING
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET
GenerateBitcoins(GetBoolArg("-gen",false), pwalletMain, GetArg("-genproclimit", 0)); GenerateBitcoins(GetBoolArg("-gen",false), pwalletMain, GetArg("-genproclimit", 1));
#else #else
GenerateBitcoins(GetBoolArg("-gen",false), GetArg("-genproclimit", 0)); GenerateBitcoins(GetBoolArg("-gen",false), GetArg("-genproclimit", 1));
#endif #endif
#endif #endif

View File

@@ -141,9 +141,9 @@ void AsyncRPCOperation_shieldcoinbase::main() {
#ifdef ENABLE_MINING #ifdef ENABLE_MINING
#ifdef ENABLE_WALLET #ifdef ENABLE_WALLET
GenerateBitcoins(GetBoolArg("-gen",false), pwalletMain, GetArg("-genproclimit", 0)); GenerateBitcoins(GetBoolArg("-gen",false), pwalletMain, GetArg("-genproclimit", 1));
#else #else
GenerateBitcoins(GetBoolArg("-gen",false), GetArg("-genproclimit", 0)); GenerateBitcoins(GetBoolArg("-gen",false), GetArg("-genproclimit", 1));
#endif #endif
#endif #endif

View File

@@ -63,7 +63,7 @@ void post_wallet_load(){
#ifdef ENABLE_MINING #ifdef ENABLE_MINING
// Generate coins in the background // Generate coins in the background
if (pwalletMain || !GetArg("-mineraddress", "").empty()) if (pwalletMain || !GetArg("-mineraddress", "").empty())
GenerateBitcoins(GetBoolArg("-gen", false), pwalletMain, GetArg("-genproclimit", 0)); GenerateBitcoins(GetBoolArg("-gen", false), pwalletMain, GetArg("-genproclimit", 1));
#endif #endif
} }