比特币源代码分析(1)

找到main函数的入口在bitcoind.cpp文件下

int main(int argc, char* argv[])
{
    SetupEnvironment();

    // Connect bitcoind signal handlers
    noui_connect();

    return (AppInit(argc, argv) ? EXIT_SUCCESS : EXIT_FAILURE);
}

 初始化过程分析:

 

第一步:设置运行环境;

第二步:连接bitcoind信号处理对象;

第三步:应用程序初始化操作;

第四步:控制台命令传入参数解析;

第五步:解析后参数的处理;

第六步:初始化日志打印;

第七步:初始化参数设置;

第八步:初始化应用程序基本上下文环境;

第九步:应用程序参数设置;

第十步:应用程序完整性检查;

第十一步:应用程序运行主函数;

第十二部:循环等待关闭消息;

第十三步:程序关闭。
  • 运行过程:

main主函数 -----> SetupEncironment设置运行环境  -----> noui_connect连接bitcoind信号处理对象  -----> AppInit初始化  ----->ParseParameters参数解析  ----->参数处理  -----> InitLogging初始化日志打印  ----->InitParameterInteraction初始化参数设置  -----> AppInitBasicSetup初始化基本上下文环境  -----> AppInitParameterInteraction应用程序参数设置  -----> AppInitSanityChecks应用程序完整性检查  ----->AppInitMain应用程序运行主函数  ----->WaitForShutdown循环等待关闭消息  -----> Shutdown程序关闭

 

posted @ 2018-03-30 14:35 qczhang 阅读(...) 评论(...) 编辑 收藏