上一节我们搞了老半天,也没整明白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. 第 14 章 结构和其他数据形式(enum枚举)

    /*----------------------------- enum.c -- 使用枚举类型的值 -----------------------------*/ #include <stdi ...

  2. October 16th 2017 Week 42nd Monday

    The more decisions that you are forced to make alone, the more you are aware of your freedom to choo ...

  3. MySql详解(一)

    MySql详解(一) 作为一名Java开发人员,数据库的地位不用多说了.从大学时期的SqlServer,到现在最流行的MySql和Oracle.前者随着阿里巴巴的去IOE化,在互联网公司中的使用比例是 ...

  4. Oracle物化视图的创建及使用(一

    Oracle物化视图的创建及使用 http://blog.csdn.net/tegwy/article/details/8935058 先看简单创建语句: create   materialized  ...

  5. HTTP协议详解之url与会话管理

    1 当我们访问一个网址的时候,这中间发生了什么 输入网址——浏览器查找域名的IP地址——浏览器给Web服务器发送一个HTTP请求——服务端处理请—— 服务端发回一个HTTP响应——浏览器渲染显示HTM ...

  6. http的长连接和短连接(数据库也一样)

    长连接与短连接 所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持. 短连接是指通信双方有数据交互时 ...

  7. 杀掉gpu上的程序

    https://blog.csdn.net/flysky_jay/article/details/82142254 当然也可以使用top找进程,但这种方式更好

  8. Ubuntu16.04之开发环境构建

    Ubuntu软件安装相对于centos而言,那真的是要愉快的多啊! 以下安装步骤,本人在公司的测试环境和开发环境以及之前个人虚拟机的测试或生产环境都测验过,基本没有问题,只要按照步骤来,即可马到成功! ...

  9. VC++定义全局变量及extern用法

    基本解释:extern可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义.此外extern也可用来进行链接指定. 也就是说extern有两 ...

  10. OpenCV——边缘检测(sobel算子、Laplacian算子、scharr滤波器)

    #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; using namespace st ...