上一节我们搞了老半天,也没整明白Exchange这个合约到底干啥用的。就它官方提供的说法,是用于货币的创造和交易。我没整明白,所以去看了下代码,发现代码头文件里面有下面这段话:

This contract enables users to create an exchange between any pair of standard currency types. A new exchange is created by funding it with an equal value of both sides of the order book and giving the issuer the initial shares in that orderbook.
 
To prevent exessive rounding errors, the initial deposit should include a sizeable quantity of both the base and quote currencies and the exchange shares should have a quantity 100x the quantity of the largest initial deposit.
Users must deposit funds into the exchange before they can trade on theexchange.
 
Each time an exchange is created a new currency for that exchanges market maker is also created. This currencies supply and symbol must be unique and it uses the currency contract's tables to manage it.
 
用百度翻译看了一下,没明白什么意思。但是我知道它会被应用在不同类型的货币交换过程中,而且这互换过程发生之前需要创建互换货币之间的汇率关系,搞不懂搞不懂。也就是说我们基本上暂时是用不到了。那就先放着吧,以后遇到再说。
 
接下来我们来看看两个比较重要的合约——eosio.msig和eosio.system
 
4、eosio.msig
这个合约用于多用户签名和用户权限管理用的,需要在实际应用中才能看出效果。我们先load它进来吧。

如上图中,我发现了一个新秘密——直接使用./cleos wallet create_key这个命令,可以将./cleos create key./cleos wallet import ${private_key}两个命令合成一个。

这样,我们就把eosio.msig这个厉害得不行的智能合约加载进来了。

下边我们也把eosio.system加载进来吧。

5、eosio.system

这个叫系统智能合约,通过这个智能合约,可以进行很多系统级别的操作,比如用户投票、将用户注册成为生产者等,功能强大到不行,以后我们会经常用到。

同样的节奏:

可是,到正式加载eosio.system智能合约的时候,它告诉我说超时了!

居然超时?多来几遍试试?

疯了,我们用了各种姿势,结果都是一样的说这玩意儿超时了。

看来,真的是超时了。

既然超时了,那咱们让它不超时不就得了嘛?

切换到nodeos命令行窗口,暂停运行程序,输入下面命令回车:

./nodeos -e -p eosio --max-transaction-time=1000

咦?!死锅咦……

怎么弄都可以了。

后话:这两天去研究EOS正式版了,刚刚上边的程序也跑的EOSIO V1.0.3。由于上边这两个智能合约一句话两句话说不清楚,所以我们先把他加载进来,回头具体使用的时候,咱们再仔细聊。

先水一节,下一节先讲角色权限哈……

EOS开发基础之六:使用cleos命令行客户端操作EOS——智能合约之eosio.msig和eosio.system的更多相关文章

  1. eos开发(二)使用cleos命令行客户端操作EOS(钱包wallet基础操作)

    不知道下边这一段英文你们是不是能看懂,如果看不懂那就算了,我就是转过来随便看看的. 总之你记住nodeos.cleos和keosd这三个工程十分重要就行了,回头咱们的研究都从这三个工程杀进去. EOS ...

  2. EOS开发基础之二:使用cleos命令行客户端操作EOS(钱包wallet基础操作)

    不知道下边这一段英文你们是不是能看懂,如果看不懂那就算了,我就是转过来随便看看的. 总之你记住nodeos.cleos和keosd这三个工程十分重要就行了,回头咱们的研究都从这三个工程杀进去. EOS ...

  3. EOS开发基础之四:使用cleos命令行客户端操作EOS——智能合约之eosio.bios和eosio.token

    现实世界中的合约,简单地说,是一个参与活动的所有人都需要遵循的协议.合约可以是正式的法律合同(例如,金融交易),或者是简单的游戏规则.典型的活动可以是诸如资金转移(在金融合约的情况下)或游戏动作(在游 ...

  4. EOS开发基础之三:使用cleos命令行客户端操作EOS——关于钱包wallet和账户account

    好了,上一节我们已经讲了关于wallet的一些基础操作,基本了解了怎么去创建一个钱包,怎么去查看钱包.上锁和解锁钱包等,这一节咱们就来开始操作账户account吧. 上一节讲到了每一个account都 ...

  5. EOS开发基础之五:使用cleos命令行客户端操作EOS——智能合约之Exchange

    先回答一下上一节中留下的问题,为什么我就看不到eosio这个账户中的钱呢?我明明为它create了很多token啊. 对,你是create了,但是没有issue啊.create了1000000000 ...

  6. eos开发(三)使用cleos命令行客户端操作EOS——关于钱包wallet和账户account

    好了,上一节我们已经讲了关于wallet的一些基础操作,基本了解了怎么去创建一个钱包,怎么去查看钱包.上锁和解锁钱包等,这一节咱们就来开始操作账户account吧. 上一节讲到了每一个account都 ...

  7. Hadoop HDFS的shell(命令行客户端)操作实例

    HDFS的shell(命令行客户端)操作实例 3.2 常用命令参数介绍 -help 功能:输出这个命令参数手册 -ls                  功能:显示目录信息 示例: hadoop fs ...

  8. 命令行客户端操作pg数据库常用操作

    登录 # su - postgres -c "psql" 或者 $psql -U user_name -d database_name -h serverhost psql (10 ...

  9. mysql命令行客户端结果分页浏览

    转载请注明出处:http://xiezhenye.com/2008/06/mysql%e5%91%bd%e4%bb%a4%e8%a1%8c%e5%ae%a2%e6%88%b7%e7%ab%af%e7% ...

随机推荐

  1. 实现一个协程版mysql连接池

    实现一个协程版的mysql连接池,该连接池支持自动创建最小连接数,自动检测mysql健康:基于swoole的chanel. 最近事情忙,心态也有点不积极.技术倒是没有落下,只是越来越不想写博客了.想到 ...

  2. 2.1Python基础语法(一)之注释与数据类型:

    返回总目录 目录: 1.注释 2.乱码 3.变量 4.数据类型 5.数据的转换 6.动态,静态和强类型,弱类型 (一)注释:(编译时是被编译器忽略的) 1.注释的分类: 2.特殊注释: (二)乱码:( ...

  3. webpack分离css单独打包

    这篇文章过期了,webpack4.x已经不这么用了,最新的可以看这个地址webpack实战场景系列 原文地址:http://www.izhongxia.com/posts/44724.html CHA ...

  4. [python]pip 版本9.0.1升级到10.0.1故障解决办法

    问题背景: 在做android自动化时使用到第三方库uiautomator时,提示要安装,但安装该uiautomator库时提示当前的pip版本偏低,需要安装10.0.1版本方可.但在升级到升级到该版 ...

  5. css选择器补充

    前面文章总结了常用的8种选择器,今天再来补充5中选择器,其中一部分是css3中新加入的. 1.相邻选择器 E+F { sRules } 相邻选择符只会命中符合条件的相邻的兄弟元素. 2.兄弟选择器 E ...

  6. 自带hyper -v 或者 Vmware安装Linux centos

    centos系统存在网盘,链接: https://pan.baidu.com/s/1A5ywyLjIegcftaT_xCvPbA 密码: n6v4 https://blog.csdn.net/nanc ...

  7. JAVA引用的种类

    最近在进行Java项目开发的时候,由于业务的原因,有时候new的对象会比较多,这个时候我总是有一个疑惑?那就是JVM在何时决定回收一个Java对象所占据的内存?这个问题其实对整个web系统来说是一个比 ...

  8. opengl渲染管线梳理

    opengl渲染管线梳理 http://www.cnblogs.com/zhanglitong/p/3238989.html 坐标系变换和矩阵 http://www.cppblog.com/guoji ...

  9. pam_frpintd.so 错误修复

    PAM unable to dlopen(/lib64/security/pam_fprintd.so): /lib64/security/pam_fprintd.so: cannot open sh ...

  10. 垃圾回收相关(深入理解Java虚拟机中的内容)

    程序计数器.虚拟机栈和本地方法栈这三个区域属于线程私有的,只存在于线程的生命周期内,线程结束之后也会消失,因此不需要对这三个区域进行垃圾回收.垃圾回收主要是针对 Java 堆和方法区进行. 判断一个对 ...