美文网首页
脚本验证线程分析

脚本验证线程分析

作者: 苦逼猿猴 | 来源:发表于2017-11-05 21:03 被阅读0次

nScriptCheckThreads该变量存储着脚本验证线程的数量,最小为0,最大是16

脚本验证线程分析

/** Run an instance of the script checking thread */ void ThreadScriptCheck(); static CCheckQueue scriptcheckqueue(128); void ThreadScriptCheck() {   RenameThread("bitcoin-scriptch");   scriptcheckqueue.Thread(); }

脚本验证线程分析 脚本验证线程分析

该函数的声明和定义都在上面了。 类CScriptCheck,表示一个脚本验证的关闭,这里存储着事务的输出

脚本验证线程分析 脚本验证线程分析 脚本验证线程分析

CCheckQueue类,排队进行脚本的验证。 根据函数上下文的调用关系,可以知道,验证脚本的队列的长度初始化为128,通过调用thread函数,thread函数在调用loop函数完成验证。由注释和源码可知,loop函数完成了脚本的验证工作,其中Master负责统计结果,Worker负责执行具体的脚本验证 cond.wait(lock);它会在一直在阻塞等待,直到有人调用add()函数加入到队列,才开始进行验证。

相关文章

网友评论

      本文标题:脚本验证线程分析

      本文链接:https://www.haomeiwen.com/subject/xubhmxtx.html