自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yhc166188的博客

路虽远,行则将至;事虽难,做则必成!

  • 博客(43)
  • 资源 (12)
  • 收藏
  • 关注

转载 EOS获取计算RAM单价价格

1.命令行中输入:./cleos get table eosio eosio rammarket返回:response:{"rows":[{"supply":"10000000000.0000 RAMCORE","base":{"balance":"68626470312 RAM","weight":"0.50000000000000000&q

2018-08-31 00:14:04 703

转载 EOS 技术术语

术语 缩写 Block.one 给出的定义 Account   由本地和或自定义权限构成的链上标识符,可以分配一个或多个密钥或者帐户。 Authority   代表现实世界中一个个体或者一群个体的权限组织方式的抽象定义。 Block Blk 区块链的可确认单位。 每个区块包含零笔或多笔交易,以及到先前所有区块的加密连接。 当绝对多数的区块...

2018-08-31 00:10:03 286

原创 docker入门及命令行实战

docker翻译为搬运工,在这里应该可以理解为搬运应用的工具,也就是云.先了解其运用场景之后更容易对他形成深刻理解.              Docker为App提供了一种自动化构建机制(Dockerfile),包括打包,基础设施依赖管理和安装等等;  Docker提供了一种类似git的Container版本化的机制,允许你对你创建过的容器进行版本管理,依靠这种机制,你还可以下载别人创建的C...

2018-08-26 17:26:26 2078

原创 eos 命令敲写流程

➜  cleos git:(master) ✗➜  cleos git:(master) ✗ ./cleos  wallet createCreating wallet: defaultSave password to use in the future to unlock this wallet.Without password imported keys will not be...

2018-08-26 14:26:41 476

转载 eos 开发一个记录转账信息的智能合约

  “EOS to the ground!”昨天老板看了我的文章,上来就劈头盖脸说,“什么to the moon,心情差,招你来是炒币的?!我们是一个最落地的DApp开发团队,打造牛逼的产品,然后跟社区分享技术心得! %@¥#@%¥!%@*……(此处打码数千字)。”老板还说,创业团队的人要脚踏实地,还要有老板的心态。其实我觉得我就很踏实啊,还特了解我们的老板,就是凡事都要梭哈,才能有最大收获(...

2018-08-23 23:41:58 1111

转载 EOSIO Dawn 4.0 系统合约解读

Dawn 4.0 发布后,基本上白皮书上提到的特性都得到了实现,特别是投票、资源抵押和内存买卖。EOS 的网络带宽和计算资源是通过抵押代币的方式获得,如果不需要了可以解除抵押收回原先的代币。投票的权重和抵押代币所获得的带宽和计算资源相关,抵押了越多,投票的权重越大。同时投票的权重会随着时间的推移减少,这个设定鼓励用户持续更新自己的投票。而存储资源则RAM是通过购买来得到,但是并不会消耗...

2018-08-21 09:08:35 426

转载 区块链EOS开发常用操作说明

以下的操作示例如果远程执行:在cleos 后加上 -u http://101.124.2.210:8888 即可1、创建钱包创建默认钱包:filename = default.walletcleos wallet create创建名称为xxxx的钱包cleos wallet create -n xxxx 2、解锁钱包cleos wallet unlockcleo...

2018-08-20 00:05:33 834

转载 EOS开发调试环境搭建(全部流程)

本贴适用于:Linux-ubuntu16.04版本和mac-osx 10.12+版本 一、最新代码编译构建1、从github上克隆代码仓库到本地 git clone https://github.com/EOS-Mainnet/eos  2、更新代码仓库子模块,使用递归参数git submodule update --init --recursive   3...

2018-08-19 17:47:05 750

转载 EOS资源系统

EOS资源系统由RAM,CPU,NET组成。数据存储需要消耗RAM,账号交易需要使用CPU和NET。一个EOS账号创建的时候可以通过购买和抵押来获取资源,费用由主账号支付。如果创建账号时并未购买资源,则需要通过其他账号购买或者进行抵押,因为购买和抵押本身就是一种交易行为需要消耗资源。RAMRAM是运行时的内存。在EOSIO系统中,数据存储在区块链中要消耗该资源,是DApp开发时必须的资源。...

2018-08-19 14:14:35 584

转载 5分钟学会cleos注册EOS主网账户、投票和发币

第一步: 安装dockerhttps://www.docker.com/community-edition# install docker for CentOS. (其他操作系统看上面链接)sudo yum install -y yum-utils device-mapper-persistent-data lvm2sudo yum-config-manager --add-repo...

2018-08-19 09:20:34 2262 1

转载 EOS 数据库与持久化 API —— 实战

上次的文章详细讲解了 EOS 数据库的架构,本文将以官方示例为基础,详解 EOS 数据库的开发实战。基本步骤在智能合约里与 EOS 数据库交互,首先要定义存储的数据: 定义对象:具体就是定义一个 C++ 类或者 C++ 结构体,数据表就由一个个对象组成。 定义主键:在刚才的类/结构体中,定义一个const类型的成员函数primary_key(),返回值必须为uint64_t...

2018-08-17 00:10:20 520

转载 EOS 数据库与持久化 API —— 架构

在 EOS 中,智能合约执行完毕后,所占用的内存会释放。程序中的所有变量都会丢失。如果智能合约里要持久地记录信息,比如游戏智能合约要记录每位用户游戏记录,本次合约执行完毕后数据不能丢失,就需要将数据存储到 EOS 数据库中。与数据库交互的 API 被官方成为 Persistence API,中文可以叫做持久化 API。下图说明了 EOS 智能合约在执行 Action 时,与数据库的交互过程。...

2018-08-16 23:58:52 531

转载 EOS代码架构及分析(一)

EOS简介EOS(Enterprise Operation System),企业操作系统,是为企业级分布式应用设计的一款区块链操作系统。相比于目前区块链平台性能低、开发难度大以及手续费高等问题,EOS拥有高性能处理能力、易于开发以及用户免费等优势,极大的满足企业级的应用需求,被誉为继比特币、以太坊之后区块链3.0技术。EOS优秀基因的背后是其底层的石墨烯软件架构所决定的。其实EOS不是最早...

2018-08-15 23:41:20 721

转载 刚炒完RAM,CPU饥荒时代就快来临,且用且珍惜吧

最近一天很多朋友反馈它的账号冻结了,啥都没法操作了,我们先看看一组数据 场景还原    昨晚23点到24点短短1个小时,全网CPU抵押的EOS快速激增了一倍,导致每个人可以用的CPU减少了一半     进而很多账号的CPU都超支了,就是已使用的CPU超过了用户拥有的CPU量,进而处于僵死状态,啥都不能做。比如下图,limit=5.9,已使用的量却是7.2。   ...

2018-08-15 23:30:31 348

转载 EOS零手续费免费?你不知道的EOS收费细节

 EOS是收取手续费的,主要体现在ram上。cpu和net也是收费的,但是是一种临时抵押冻结方式,一段时间后会自动解冻, 所以从一定程度上说cpu, net资源是免费的。这个其实也是合理的,因为ram是物理资产,不随时间的增长而增长。而cpu, net资产是一种虚拟资产,它的量是跟时间相关的。时间越长,它的量越大。1个月的cpu计算量肯定是1天cpu计算量的30倍。    账号的资源拥有状态保...

2018-08-15 23:23:06 1122

转载 如何释放已使用的EOS RAM,然后就可以自由买卖了

     昨天到今天,EOS RAM价格大跌,有一些用户想卖RAM,但是却发现大量RAM被占用,比如下图:    这位伙伴找到我时,他说啥都没做但他的内存使用量怎么高达189k,然后我查了一下该账号的交易记录,发现他曾经部署过智能合约。然后他告诉我是他不小心部署的,且报错了,以为没部署成功。可见RAM被智能合约吃掉了,那怎么办呢?释放已经使用的EOS RAM    个人使用掉的...

2018-08-15 23:04:32 549

转载 EOS RAM交易背后的阳谋和阴谋

      区块链一直有两个最核心的基本指标,去中心化和高TPS。去中心化和高TPS其实是一对矛盾,越去中心化,效率越低,TPS自然就低。因此DPOS应运而生,投票选出21个代表,决策者只有21个代表,而不是POW的全民运动,自然决策效率高。EOS是DPOS共识算法的一次最大规模应用和实验。但是高TPS会带来两个很大的问题,那就是高数据量和高实时处理量高数据量    以太坊的历史数据量...

2018-08-15 22:58:54 277

转载 EOS Bios Boot Sequence 启动步骤

通过分析并运行eos/tutorials/bios-boot-tutorial目录下的bios-boot-tutorial.py脚本文件,结合以前的学习过的eos命令,对eos的启动过程做一个简略的分析。此文件在于用单台主机模拟eos的启动流程,最后创建了多个节点并轮流出块的环境,为以后布置多节点多主机环境创建一个良好的基础。在运行bios-boot-tutorial.py脚本前,请安装好py...

2018-08-14 23:44:34 1451

转载 EOSIO开发(八)- 智能合约基础概念

什么是智能合约智能合约的概念早在上世纪90年代就已经被提出来,自从以太坊将其发扬光大以后,智能合约在各个区块链项目,尤其是公链中得到了广泛应用,EOS也不例外。用一句话描述智能合约:智能合约(Smart contract )是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。例如小张和小王掷骰子,约定谁...

2018-08-14 23:35:27 212

转载 EOSIO开发(七)- 使用CLion查看EOS代码

本文将会介绍如何使用CLion查看EOS源码。EOS的智能合约基于C++开发,官方在github上提供了很多合约样例,地址: https://github.com/EOSIO/eos/tree/master/contracts直接查看这些样例的源码无疑是学习合约开发最快速的方法,这时我们需要一个合适的IDE工具,尤其是IDE的代码追查功能,能够大大提高阅读源码的效率,在这推荐大家使用CLi...

2018-08-14 23:30:30 481

转载 EOSIO开发(六)- 账户之实战篇

本文将介绍如何创建账户,以及定义账户权限。涉及的操作有:创建账户 修改账户权限 修改账户权限目标是创建一个myaccount账户,同时将账户权限定义为下面的形式:myaccount account authorities 注:ac1、ac2是另外两个账户。环境准备以下操作基于Docker,非Docker环境请参考eos wiki本地启动方法。docker pull...

2018-08-14 23:26:45 356

转载 EOSIO开发(五)- 钱包之实战篇

通过这篇文章,我们将学习如何通过cleos命令管理钱包。环境准备Docker环境:docker pull eosio/eos # 下载镜像 docker run --name keosd -t eosio/eos /opt/eosio/bin/keosd arg1 arg2 # 启动keosd docker exec -it keosd /bin/bash # 进入keosd命令...

2018-08-14 23:10:32 925

转载 EOSIO开发(四)- nodeos、keosd与cleos

前一篇文章介绍了EOSIO中钱包、账户与账户权限的概念,这一篇文章继续学习EOSIO系统的主要组件,包括nodeos、keosd以及cleos。本文执行的命令都是基于Docker环境,请先下载Docker镜像docker pull eosio/eos nodeos、keosd与cleos的关系先来了解整体架构,下图展示了nodeos、keosd与cleos之间的关系。 ...

2018-08-14 23:02:29 473

转载 EOSIO开发(三)钱包、账户与账户权限之概念篇

这篇文章为大家介绍钱包(Wallet)、账户(Accounts)、账户权限(Account authorities)的概念。钱包 Wallet钱包是一个本地客户端软件,有下面两个作用:保存私钥。私钥可以和一个或多个账户关联,私钥保存在钱包中,也可以知道公钥,私钥对应的公钥保存在账户中。 对交易签名。账户(Account)发起交易(Transactions)时,需要通过钱包客户端对交易...

2018-08-14 22:54:03 329

转载 EOSIO开发(二)运行合约样例

本文将介绍如何使用EOSIO自带的合约”Currency”,实现创建钱包-创建账户-执行合约 的完整流程前言本文将介绍如何在Docker环境下,使用系统自带的合约”Currency”,实现 创建钱包 - 创建账户 - 执行合约 的完整流程。在学习文章内容之前,建议先了解EOS中Account、Permission、Active以及Action的基本概念,文末有相关的参考资料。由于本...

2018-08-14 22:43:46 251

原创 eos在MAC上搭建一个EOS 3.0本地节点

1)在github上克隆master一个版本,因为master更新很频繁,所以记得要经常用git pull更新一下代码git clone https://github.com/eosio/eos --recursive cd ~/eos ./eosio_build.sh2)安装编译cd ~/eos/buildsudo make install注意:以下这项可选,主要...

2018-08-14 17:10:03 561

转载 boost------result_of的使用(Boost程序库完全开发指南)读书笔记

1、简介首先来看两个小的工具类result_of和ref,它们是本章其他库的基础。result_of使用了复杂的技巧来自动推导函数的返回值类型,ref可以包装对象的使用,在传递参数时消除对象拷贝的代价,或者将不可拷贝的对象变为可以拷贝。bind是c++ 98标准库中函数适配器的增强,可以适配任意的可调用函数,包括函数指针、函数引用和函数对象,把它们变成一个新的函数对象,他是迈向c++函数式...

2018-08-12 15:13:01 287

原创 C++之多重继承

大多数应用程序使用单个基类的公用继承,但是在某些情况下,单继承是不够的,必须使用多继承。C++允许为一个派生类指定多个基类,这样的继承结构被称做多重继承.举个例子,交通工具类可以派生出汽车和船连个子类,但拥有汽车和船共同特性水陆两用汽车就必须继承来自汽车类与船类的共同属性。如下图示:代码实现://多重继承#include <iostream>using namesp...

2018-08-11 16:35:16 14911 1

原创 C++中基类的析构函数为什么要用virtual虚析构函数

大家知道,析构函数是为了在对象不被使用之后释放它的资源,虚函数是为了实现多态。那么把析构函数声明为vitual有什么作用呢?直接的讲,C++中基类采用virtual虚析构函数是为了防止内存泄漏。具体地说,如果派生类中申请了内存空间,并在其析构函数中对这些内存空间进行释放。假设基类中采用的是非虚析构函数,当删除基类指针指向的派生类对象时就不会触发动态绑定,因而只会调用基类的析构函数,而不会调用派生...

2018-08-11 15:53:07 19280 3

原创 C++使用初始化列表初始化数据成员的三种情况

类对象的构造顺序是这样的:1.分配内存,调用构造函数时,隐式/显示的初始化各数据成员(构造函数列表的初始化方式不是按照列表的的顺序,而是按照变量声明的顺序同时初始化显隐数据成员);2.进入构造函数后在构造函数中执行一般赋值与计算。使用初始化列表有两个原因:原因1.必须这样做:《C++ Primer》中提到在以下三种情况下需要使用初始化成员列表: 情况一、需要初始化的数据...

2018-08-11 15:04:27 14005 2

原创 系统调用是什么

系统调用1.系统调用和普通函数完全不同,系统调用实际上是0x80号中断对应的中断处理程序的子程序。换句话说,在linux系统上,0x80中断是系统调用的统一入口。某个具体的系统调用是这个中断处理程序的子程序,进入具体某个系统调用是通过内核定义的系统调用号码来实现的。linux通过执行如下汇编代码陷入内核执行系统调用:int 0x80; //这一句是进入系统调用统一入口。2.每个系统调用在内...

2018-08-09 11:12:17 5908

原创 TCP选项之SO_RCVLOWAT和SO_SNDLOWAT

SO_RCVLOWAT SO_SNDLOWAT每个套接口都有一个接收低潮限度和一个发送低潮限度。接收低潮限度:对于TCP套接口而言,接收缓冲区中的数据必须达到规定数量,内核才通知进程“可读”。比如触发select或者epoll,返回“套接口可读”。发送低潮限度:对于TCP套接口而言,和接收低潮限度一个道理。TCP的接收缓冲区和发送缓冲区概念不是很清晰的话,请参考另一篇博文https://...

2018-08-06 16:18:06 632

原创 TCP性能优化之避免慢启动

TCP协议中有个慢启动,在《TCP/IP详解卷一》中占据的篇幅很小,但是这个东西,在某些业务场景下,对性能的影响非常大。 什么是慢启动最初的TCP的实现方式是,在连接建立成功后便会向网络中发送大尺寸的数据包,假如网络出现问题,很多这样的大包会积攒在路由器上,很容易导致网络中路由器缓存空间耗尽,从而发生拥塞。因此现在的TCP协议规定了,新建立的连接不能够一开始就发送大尺寸的数据包,而只能从...

2018-08-06 16:01:45 1445

原创 TCP选项之TCP_CORK和TCP_NODELAY

TCP_CORK TCP_NODELAY这两个选项是互斥的,打开或者关闭TCP的nagle算法,下面用场景来解释典型的webserver向客户端的应答,应用层代码实现流程粗略来说,一般如下所示:  if(条件1){     向buffer_last_modified填充协议内容“Last-Modified: Sat, 04 May 2012 05:28:58 GMT”;    ...

2018-08-06 12:17:11 416

原创 TCP选项之SO_RCVBUF和SO_SNDBUF

SO_RCVBUF SO_SNDBUF先明确一个概念:每个TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区,TCP的全双工的工作模式以及TCP的滑动窗口便是依赖于这两个独立的buffer以及此buffer的填充状态。接收缓冲区把数据缓存入内核,应用进程一直没有调用read进行读取的话,此数据会一直缓存在相应socket的接收缓冲区内。再啰嗦一点,不管进程是否读取socket,对端...

2018-08-06 10:01:12 2319

原创 TCP选项之SO_LINGER

SO_LINGER这个选项在我以前带队改造haproxy的时候引出过一个reset(RST)客户端连接的bug。SO_LINGER作用设置函数close()关闭TCP连接时的行为。缺省close()的行为是,如果有数据残留在socket发送缓冲区中则系统将继续发送这些数据给对方,等待被确认,然后返回。利用此选项,可以将此缺省行为设置为以下两种  a.立即关闭该连接,通过发送RST分组(而...

2018-08-01 16:50:18 160

原创 TCP之异常关闭的意义

终止一个连接的正常方式是发送FIN。在发送缓冲区中所有排队数据都已发送之后才发送FIN,正常情况下没有任何数据丢失。但我们有时也有可能发送一个RST报文段而不是FIN来中途关闭一个连接。这称为异常关闭。进程关闭socket的默认方式是正常关闭,如果需要异常关闭,利用SO_LINGER选项来控制。 异常关闭一个连接对应用程序来说有两个优点:(1)丢弃任何待发的已经无意义的数据,并立...

2018-08-01 16:29:52 187

原创 TCP选项之TCP_KEEPALIVE

KEEPALIVE机制,是TCP协议规定的TCP层(非应用层业务代码实现的)检测TCP本端到对方主机的TCP连接的连通性的行为。避免服务器在客户端出现各种不良状况时无法感知,而永远等在这条TCP连接上。 该选项可以设置这个检测行为的细节,如下代码所示:int keepAlive = 1;    // 非0值,开启keepalive属性int keepIdle = 60;    //...

2018-08-01 16:22:10 437

原创 深入浅出TCP之半关闭与CLOSE_WAIT

    终止一个连接要经过4次握手。这由TCP的半关闭(half-close)造成的。既然一个TCP连接是全双工(即数据在两个方向上能同时传递,可理解为两个方向相反的独立通道),因此每个方向必须单独地进行关闭。这原则就是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向连接。当一端收到一个FIN,内核让read返回0来通知应用层另一端已经终止了向本端的数据传送。发送FIN通常是应用层对s...

2018-08-01 16:08:17 385

原创 几种TCP连接中出现RST的情况

应该没有人会质疑,现在是一个网络时代了。应该不少程序员在编程中需要考虑多机、局域网、广域网的各种问题。所以网络知识也是避免不了学习的。而且笔者一直觉得TCP/IP网络知识在一个程序员知识体系中必需占有一席之地的。在TCP协议中RST表示复位,用来异常的关闭连接,在TCP的设计中它是不可或缺的。发送RST包关闭连接时,不必等缓冲区的包都发出去,直接就丢弃缓存区的包发送RST包。而接收端收到RST...

2018-08-01 15:56:38 351

secureCRT免安装版.zip

secureCRT免安装版.zip

2021-04-10

Visual Assist 西红柿完美支持2010-2017

Visual+Assist+X+通用破解补丁2017,亲测可用,带有破解补丁(完美支持visula stuido 2017及以下版本)

2018-06-05

Visual+Assist+X+通用破解补丁2017

Visual+Assist+X+通用破解补丁2017,亲测可用,带有破解补丁(完美支持visula stuido 2015及以下版本)

2018-05-29

语音播报demo

利用百度语音技术把文字转换成语音,在从内存中读取,播放音乐。是源码,有依懒项需要设置一下,在win32目录下有编译好的程序可以直接运行

2018-02-07

Notepad FTP插件下载(NppFTP)

NppFTP是Notepad++上的一款小插件,它能轻松实现FTP、FTPES和SFTP通信。下载该压缩包,解压完成后,将bin目录下的“NppFTP.dll”文件放notepad++的plugin目录下 重新启动notepad++即安装成功

2018-02-01

dependencies2015库

vs依赖库下载!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

2017-11-29

qt 播放音乐

qt播放音乐 qmediaplaylist 循环暂停 快进快退等播放。。

2017-11-28

获取电脑进程列表,显示各个进程的CPU,内存,上行速度,下载速度

获取电脑进程列表,显示各个进程的CPU,内存,上行速度,下载速度。以及通过pid杀死进程的方法。使用winpcap库抓取各个进程的网络速率。

2017-09-20

通过进程id获取主窗口句柄及主窗口标题

通过进程id获取到所在进程的主窗口的句柄,及通过该主窗口句柄获取当前主窗口的标题,进程名;这是一个demo例程,仅供参考

2017-09-01

( YUV420(YV12)与YUY2(YUV422,YUYV)格式互转

做美颜要进行格式转换,就做了两种格式的互转,( YUV420(YV12)与YUY2(YUV422,YUYV)格式互转

2017-08-02

YUY420(YV12)转YUY2(YUV420),读取yuv文件转成YUY2文件

从磁盘中读取YUY420(YV12)文件解析处理按YUY2(YUV420)格式写入磁盘,利用格式检查工具可以进行检查

2017-08-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除