比特幣源碼分析3

以上貼出比特幣核心配置。比如說(shuō)難度值最小不能小于多少,多久時(shí)間出塊等等。

接著往下看其他初始化函數(shù).

if (!gArgs.ReadConfigFiles(error, true)) {

? ? ? ? ? ? fprintf(stderr, "Error reading configuration file: %s\n", error.c_str());

? ? ? ? ? ? return false;

? ? ? ? }

從配置文件里面讀取配置信息,這也不開展了。

? ? ? ? ? ? InitLogging();初始化日志

? ? ? ? InitParameterInteraction();

這個(gè)函數(shù)里面判斷一些配置是否設(shè)置了。然后輸入日志里面,比如說(shuō)upnp代理proxy等等

將加載后的參數(shù)封裝在gArgs這個(gè)對(duì)象中。使用這個(gè)對(duì)象初始化其他內(nèi)容。

AppInitBasicSetup{

SetupNetworking//這個(gè)初始化網(wǎng)絡(luò)參數(shù),

registerSignalHandler

}

AppInitSanityChecks像這個(gè)函數(shù)就是初始化隨機(jī)數(shù)產(chǎn)生和SPECK2561加密算法類

以上就差不多設(shè)置完成了

然后可以開始正式的程序

fprintf(stdout, "Bitcoin server starting\n");

開始主程序錢還得加個(gè)

if (!AppInitLockDataDirectory())

? ? ? ? {

? ? ? ? ? ? // If locking the data directory failed, exit immediately

? ? ? ? ? ? return false;

? ? ? ? }

fRet = AppInitMain(interfaces);

好了這個(gè)函數(shù)相當(dāng)長(zhǎng),————end

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容