- RESTful 还是 JSON-RPC
云闲不收
restfuljsonrpc
前言RESTful比较简单地说就是,大家请求一样的url(GET方法有一个例外,url中带了一个id),通过不同的请求方法,分别进行不同的操作(CRUD)。JSON-RPCJSON-RPC是一个无状态且轻量级的远程过程调用(RPC)传送协议,通过JSON传递内容。远程过程调用意思就是,用函数思维写API,用JSON传值,返回一个JSON。RESTful的逻辑思维比较难转换初学coding,比较定式
- JSON入门(基于ESP-IDF)
弱冠少年
嵌入式软件json服务器运维
主要参考资料:ESP32学习笔记(12)——JSON接口使用:https://blog.csdn.net/qq_36347513/article/details/116481167目录1.JSON简介1.1JSON语法规则1.2JSON键/值对2.添加cJSON4.解析JSON数据4.1判断是否为JSON4.2解析数据4.2.1解析字符串类型数据4.2.2解析整型数组数据4.3释放内存1.JSON
- java xml转json数组_如何在Java中将XML转换为JSON数组?
weixin_39850143
javaxml转json数组
JSON是轻量级的数据交换格式,JSON的格式类似于键值对。我们可以使用org.json.XML类将XML转换为JSON数组,这提供了一个静态方法XML.toJSONObject()来将XML转换为JSON数组。语法publicstaticJSONObjecttoJSONObject(java.lang.Stringstring)throwsJSONException在下面的示例中,将XML转换为
- 系统编程 网络 cjson解析
懂linux吗
网络开发语言linuxtcp/ipc语言
解析JSON数据的过程,其实就是剥离一个一个链表节点(键值对)的过程。解析方法如下:①创建链表头指针:cJSON*cjson_test=NULL;②解析整段JSON数据,并将链表头结点地址返回,赋值给头指针:解析整段数据使用的API只有一个:(cJSON*)cJSON_Parse(constchar*value);③根据键值对的名称从链表中取出对应的值,返回该键值对(链表节点)的地址(cJSON*
- 一种低版本mybatisPlus SQL注入攻击解决办法
浅度差文
sqljava数据库
对https://blog.csdn.net/qq_37148232/article/details/135238622?spm=1001.2014.3001.5501作了下升级。使用切面对入参作全面检查。以解决低版本mybatisPlus所带来的sql注入问题。publicclassIllegalSQLCheckExecutor{privatestaticJSONConfigjsonConfig
- cmake:VS2015和GCC编译cJSON
10km
cmakejsonc/c++/c++11cJSOncmake编译gcc
cJSON是基于ANSIC的跨平台JSON解析开源库,在嵌入式应用中使用比较广泛,cJSON支持CMAKE编译,本文以脚本形式提供了使用CMAKE基于VS2015/Windows以及GCC/MinGW的编译过程。环境要求cmake这是必须的编译工具VisualStudio2015ORMinGWforwindowsgccforlinuxVisualStudio2015编译脚本msvc_build.b
- 高性能 Rust JSON 库 sonic-rs 开源
后端rust
1.sonic-rs介绍sonic-rs是一个基于SIMD的高性能RustJSON库,是sonicJSON库的Rust版本。字节跳动sonic开源项目如今包含了不同语言的多个JSON库(如下)。其中,sonic-go最先开源,使用了JIT和SIMD技术,sonic-cpp使用了C++模板和SIMD技术,这两个JSON库均已经在字节内部得到了较大规模的落地。在成本优化大背景下,为了帮助Golang业
- 关于cJSON_Delete导致程序各处free都失败的原因
灵哎惹,凌沃敏
C/C++嵌入式系统linuxc++程序人生linux
原因:如果程序中有删除父级的cJSON,则不用在删除父级的cJSON之前删除子级的cJSON了,否则会导致内存分配紊乱(大量free的入口地址找不到),从而导致后续所有的free都失败。比如,json2是json1的子级,则如果有删除json1的代码就不用了再删除json2了,否则内存紊乱。
- idea自带的HttpClient使用
draymond7107
其他intellij-idea
1.全局变量配置{"local":{"baseUrl":"http://localhost:9001/"},"test":{"baseUrl":"http://localhost:9002/"}}2.登录并将结果设置到全局变量@PostMapping("/login")publicJSONObjectlogin(HttpServletRequestrequest,HttpServletRespon
- 编译一份适用于鸿蒙ArkTs的so动态库教学,提供给第三方导入并使用
土了个丘
鸿蒙harmonyos华为
编译一份适用于鸿蒙ArkTs的so动态库教学,提供给第三方导入并使用1准备一份c代码2创建一个native项目3编译并导出so库4导入第三方so动态库并在ArkTs中使用5添加注册函数和其他ArkTs与cfunction交互的函数N-Api转载注明出处1准备一份c代码这里以cJSON为例,只需要使用到仓库的cJSON.h和cJSON.c2创建一个native项目打开DevEco-Studio创建一
- 2023 Java和微信小程序登录获取手机号 【springboot接口三步走】
假客套
微信小程序java
微信小程序准备工作:获取微信小程序的第一次的code,传给后端第一个接口获取微信小程序的第二次的code注意:code共分两次获取,两次不一致Java后端准备工作:获取APPID和SECRETJava三个方法详情以及调用:①第一个通过微信小程序第一个code获取openid(微信小程序调用)publicJSONObjectgetWXSessionKey(Stringcode){StringAPPI
- go gin 响应数据
aaxhl99
golanggin开发语言
gogin响应数据packagemainimport("fmt""github.com/gin-gonic/gin")typeUserInfostruct{UserNamestring`json:"user_name"`Ageint`json:"age"`Passwordstring`json:"-"`}funcJsonTest(ctx*gin.Context){a:=UserInfo{"张三",
- Linux实现发送post请求
星夜兼程工作笔记
1.前言Linux下的http请求有许多种方式,其中curl库是C语言封装的一个强大的库,使用curl比封装socket更加方便。cJSON是一个小型的json封装库,可以把数据封装成json格式。本文介绍了这两种技术,并通过此技术完成了Linux下的http请求,同时把代码封装到quagga下,quagga运行时可以正常创建数据到ONOS。2.Linux下http请求实现2.1.curl简介cu
- cocos2dx-lua读取json文件
亮亮同学
cocos2d-x技术群新群:117871561c++技术交流群:593010226localstr=cc.FileUtils:getInstance():getStringFromFile("xxxx.json")localok,datatable=pcall(function()returncjson.decode(str)end)iftrue==okandtype(datatable)=="
- C#对JSON文件进行增删改查
旡心-小小康
c#笔记
usingNewtonsoft.Json.Linq;usingNewtonsoft.Json;namespaceWebApi.Helper.Tool{classJsonFileHelper{////根目录的相对途径包含文件名//publicJsonFileHelper(stringjsonName="appsettings",string_path="appsettings.json")//{//
- cjson注意事项
含痕连柔
json
申请了内存没有释放造成内存申请失败,下面记录下使用的注意问题(1)使用root=cJSON_Parse(text)将字符串转成json格式,函数中申请了一块内存给root所以在最后要释放root,使用cJSON_Delete(root);释放cJSON_Parse()分配出来的内存空间cJSON*prase=cJSON_Parse(json);cJSON_Delete(prase);(2)使用cJ
- 周五 2020-05-22 23:30 - 06:13 晴 11h07m
么得感情的日更机器
2020-5-22:晚上和下午的时间全部用来搞CJSON项目了,不符合计划安排一时间记录0:006:13休息-睡觉6:136:136:293-日常-学习强国0:166:296:352-英语2-阅读0:066:356:402-英语1-听力0:056:406:423-日常-0:026:426:502-英语1-听力0:086:507:52饭早11:027:528:032-技能-时间管理-日总结0:118
- nginx+lua配置,一个域名配置https,docker集群使用
大得369
nginxluahttps
没安装kua的先安装lua没有resty.http模块的,许配置nginx+lua配置,一个域名配置https,docker集群使用,一个域名配置https管理整个集群lua做转发(方向代理)1、ad_load.lua文件ngx.header.content_type="application/json;charset=utf8"localcjson=require("cjson")localht
- 超详细的嵌入式cJSON使用注意事项,持续补充中......
struggle_success
嵌入式C语言cJSONC语言嵌入式
文章目录一、堆内存不足1.1问题描述1.2解决办法二、内存泄露2.1忘记Delete2.2忘记Free2.3串口数据接收缺少部分字符导致的内存泄露(自己的问题)问题分析2.4内存泄露在Cortex-M3内核会发生什么?cJSON开源库地址:cJSON一、堆内存不足1.1问题描述这是大家遇到最多的问题之一,在Keil5中给STM32F103ZET6默认分配的堆大小是0x200,在数据量比较大的时候容
- day6:进程间的通信
jacksheepskin
IO进程线程linux
思维导图:实现多个进程之间的收发信息操作create.c:#includeintmain(intargc,constchar*argv[]){if(mkfifo("a_send_b",0664)!=0){perror("");return-1;}if(mkfifo("b_send_a",0664)!=0){perror("");return-1;}printf("文件创建成功\n");getcha
- 第二、三周周报12.17.2022-12.25.2022
weixin_51054833
自然语言处理人工智能
这两周:爬了一些图片练练手作为NLP入门,跟着看了李宏毅老师的一些NLP基础内容。学习了RNN模型的数学基础,原理,用pytorch跑了一下RNN,对于如何使用RNN模型有了一定的了解目录图片爬虫:acjsonseleniumNLP语音辨识TOKEN获取声学特征一些数据集尺度语音辨识常见模型seq2seqHMMRNN输入输出张量shape激活函数:RNN:tanh函数IRNN:RELU函数损失函数
- iView导入Excel数据到数据库
五菱宏光
随手笔记
1.前端使用的是iView的Upload上传组件2.后端使用的是ExcelPackage,当然可以使用NPOI3.效果图:后端代码如下:1)//导入[HttpPost]publicJsonResultImport(){AjaxResultresult=newAjaxResult();HttpPostedFileBasefostFile=Request.Files["file"];Streamstr
- Keil添加cJson和MQTT自带的库
VF-TECH
单片机C语言cJsonMQTTkeilpack
我是用的芯片是MM32F031,开发环境是keil。添加keil自带的jsonmqtt库跟使用的哪款芯片没关系(1)安装cjson和mqtt的pack(2)功能调用
- cJSON内存管理
南沙的星星
jsonc++
需要进行内存释放管理的函数:cJSON_Parse->cJSON_DeletecJSON_CreateObject->cJSON_DeletecJSON_Print->cJSON_free经验总结:1,cJSON_CreateObject嵌套的话,在根部cJSON_Delete即可。2,一定要及时逐一对应释放,否则会蚕食内存。
- qt使用cJson
码肥人壮
C++\QTqtcjsonjsoncjson使用
1、说明 qt明明有QJson模块,为什么还需要使用cJson? 开始我也想qt怎么会需要cjson,肯定会自带json相关处理解析类,后来遇到了使用qt4开发嵌入式设备程序,发现怎么也找不到QJson相关的类…,查资料才知道,QJson模块是在qt5之后才添加的,所以qt4没有这个模块,于是cJSON这个非常简明(短小精悍)的json文件处理库就进入了视野。cJSON源码解读:https:/
- cJSON代码解读
书中倦客
单片机
1、背景cJSON用了很久,但是对它一直不太了解。这次向添加对longlong类型的支持,一直出问题。因为有以前添加两位小数float的经历,我觉得会很轻松,没想到翻车了。于是有了这边文档,阅读了部分博主对cJSON的解析,给出自己的体悟。1.1参考文档【万字详解】cJSON解析-CSDN博客2从使用者角度分析2.1数据结构上分析cJSON在使用上来说有两种:1、将json字符串输入得到key-v
- 在java中发送post请求
qq_53985858
java开发语言
创建请求工具类:使用第三方库,如ApacheHttpClient:ApacheHttpClient是一个功能强大的HTTP客户端库,提供了更便捷的方式发送HTTP请求。publicclassHttpRequest{//发送post请求publicJSONObjectpost(Stringurl,Mapdata){HttpPosthttpPost=newHttpPost(url);Closeable
- cjson/cJSON.h: No such file or directory
柳鲲鹏
linuxlinux
具体错误Infileincludedfrommosquitto_ctrl.c:19:../../config.h:86:12:fatalerror:cjson/cJSON.h:Nosuchfileordirectory86|#include|^~~~~~~~~~~~~~~解决办法1(无效)sudoaptinstall-ylibjsoncpp-dev自己编译Ubuntu上cJSON下载编译-CSDN
- 基于JWT的用户token验证
雪谷垂钓
springboot基础知识java服务器前端
1.基于session的用户验证2.基于token的用户身份验证3.jwtjwt代码实现方式1.导包com.auth0java-jwt3.18.22.在登录用户接口返回token(当用户登录时返回token)登录接口@PostMapping("/user-tokens")publicJsonResponselogin(@RequestBodyUseruser)throwsException{Str
- 3-4 通用功能与配置
雪谷垂钓
java开发语言
1.加解密工具上面的三个包在资料里面找2.通用json返回类publicclassJsonResponse{privateStringcode;privateStringmsg;privateTdata;publicJsonResponse(Stringcode,Stringmsg){this.code=code;this.msg=msg;}publicJsonResponse(Tdata){th
- Java常用排序算法/程序员必须掌握的8大排序算法
cugfy
java
分类:
1)插入排序(直接插入排序、希尔排序)
2)交换排序(冒泡排序、快速排序)
3)选择排序(直接选择排序、堆排序)
4)归并排序
5)分配排序(基数排序)
所需辅助空间最多:归并排序
所需辅助空间最少:堆排序
平均速度最快:快速排序
不稳定:快速排序,希尔排序,堆排序。
先来看看8种排序之间的关系:
1.直接插入排序
(1
- 【Spark102】Spark存储模块BlockManager剖析
bit1129
manager
Spark围绕着BlockManager构建了存储模块,包括RDD,Shuffle,Broadcast的存储都使用了BlockManager。而BlockManager在实现上是一个针对每个应用的Master/Executor结构,即Driver上BlockManager充当了Master角色,而各个Slave上(具体到应用范围,就是Executor)的BlockManager充当了Slave角色
- linux 查看端口被占用情况详解
daizj
linux端口占用netstatlsof
经常在启动一个程序会碰到端口被占用,这里讲一下怎么查看端口是否被占用,及哪个程序占用,怎么Kill掉已占用端口的程序
1、lsof -i:port
port为端口号
[root@slave /data/spark-1.4.0-bin-cdh4]# lsof -i:8080
COMMAND PID USER FD TY
- Hosts文件使用
周凡杨
hostslocahost
一切都要从localhost说起,经常在tomcat容器起动后,访问页面时输入http://localhost:8088/index.jsp,大家都知道localhost代表本机地址,如果本机IP是10.10.134.21,那就相当于http://10.10.134.21:8088/index.jsp,有时候也会看到http: 127.0.0.1:
- java excel工具
g21121
Java excel
直接上代码,一看就懂,利用的是jxl:
import java.io.File;
import java.io.IOException;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.Label;
import
- web报表工具finereport常用函数的用法总结(数组函数)
老A不折腾
finereportweb报表函数总结
ADD2ARRAY
ADDARRAY(array,insertArray, start):在数组第start个位置插入insertArray中的所有元素,再返回该数组。
示例:
ADDARRAY([3,4, 1, 5, 7], [23, 43, 22], 3)返回[3, 4, 23, 43, 22, 1, 5, 7].
ADDARRAY([3,4, 1, 5, 7], "测试&q
- 游戏服务器网络带宽负载计算
墙头上一根草
服务器
家庭所安装的4M,8M宽带。其中M是指,Mbits/S
其中要提前说明的是:
8bits = 1Byte
即8位等于1字节。我们硬盘大小50G。意思是50*1024M字节,约为 50000多字节。但是网宽是以“位”为单位的,所以,8Mbits就是1M字节。是容积体积的单位。
8Mbits/s后面的S是秒。8Mbits/s意思是 每秒8M位,即每秒1M字节。
我是在计算我们网络流量时想到的
- 我的spring学习笔记2-IoC(反向控制 依赖注入)
aijuans
Spring 3 系列
IoC(反向控制 依赖注入)这是Spring提出来了,这也是Spring一大特色。这里我不用多说,我们看Spring教程就可以了解。当然我们不用Spring也可以用IoC,下面我将介绍不用Spring的IoC。
IoC不是框架,她是java的技术,如今大多数轻量级的容器都会用到IoC技术。这里我就用一个例子来说明:
如:程序中有 Mysql.calss 、Oracle.class 、SqlSe
- 高性能mysql 之 选择存储引擎(一)
annan211
mysqlInnoDBMySQL引擎存储引擎
1 没有特殊情况,应尽可能使用InnoDB存储引擎。 原因:InnoDB 和 MYIsAM 是mysql 最常用、使用最普遍的存储引擎。其中InnoDB是最重要、最广泛的存储引擎。她 被设计用来处理大量的短期事务。短期事务大部分情况下是正常提交的,很少有回滚的情况。InnoDB的性能和自动崩溃 恢复特性使得她在非事务型存储的需求中也非常流行,除非有非常
- UDP网络编程
百合不是茶
UDP编程局域网组播
UDP是基于无连接的,不可靠的传输 与TCP/IP相反
UDP实现私聊,发送方式客户端,接受方式服务器
package netUDP_sc;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.Ine
- JQuery对象的val()方法执行结果分析
bijian1013
JavaScriptjsjquery
JavaScript中,如果id对应的标签不存在(同理JAVA中,如果对象不存在),则调用它的方法会报错或抛异常。在实际开发中,发现JQuery在id对应的标签不存在时,调其val()方法不会报错,结果是undefined。
- http请求测试实例(采用json-lib解析)
bijian1013
jsonhttp
由于fastjson只支持JDK1.5版本,因些对于JDK1.4的项目,可以采用json-lib来解析JSON数据。如下是http请求的另外一种写法,仅供参考。
package com;
import java.util.HashMap;
import java.util.Map;
import
- 【RPC框架Hessian四】Hessian与Spring集成
bit1129
hessian
在【RPC框架Hessian二】Hessian 对象序列化和反序列化一文中介绍了基于Hessian的RPC服务的实现步骤,在那里使用Hessian提供的API完成基于Hessian的RPC服务开发和客户端调用,本文使用Spring对Hessian的集成来实现Hessian的RPC调用。
定义模型、接口和服务器端代码
|---Model
&nb
- 【Mahout三】基于Mahout CBayes算法的20newsgroup流程分析
bit1129
Mahout
1.Mahout环境搭建
1.下载Mahout
http://mirror.bit.edu.cn/apache/mahout/0.10.0/mahout-distribution-0.10.0.tar.gz
2.解压Mahout
3. 配置环境变量
vim /etc/profile
export HADOOP_HOME=/home
- nginx负载tomcat遇非80时的转发问题
ronin47
nginx负载后端容器是tomcat(其它容器如WAS,JBOSS暂没发现这个问题)非80端口,遇到跳转异常问题。解决的思路是:$host:port
详细如下:
该问题是最先发现的,由于之前对nginx不是特别的熟悉所以该问题是个入门级别的:
? 1 2 3 4 5
- java-17-在一个字符串中找到第一个只出现一次的字符
bylijinnan
java
public class FirstShowOnlyOnceElement {
/**Q17.在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b
* 1.int[] count:count[i]表示i对应字符出现的次数
* 2.将26个英文字母映射:a-z <--> 0-25
* 3.假设全部字母都是小写
*/
pu
- mongoDB 复制集
开窍的石头
mongodb
mongo的复制集就像mysql的主从数据库,当你往其中的主复制集(primary)写数据的时候,副复制集(secondary)会自动同步主复制集(Primary)的数据,当主复制集挂掉以后其中的一个副复制集会自动成为主复制集。提供服务器的可用性。和防止当机问题
mo
- [宇宙与天文]宇宙时代的经济学
comsci
经济
宇宙尺度的交通工具一般都体型巨大,造价高昂。。。。。
在宇宙中进行航行,近程采用反作用力类型的发动机,需要消耗少量矿石燃料,中远程航行要采用量子或者聚变反应堆发动机,进行超空间跳跃,要消耗大量高纯度水晶体能源
以目前地球上国家的经济发展水平来讲,
- Git忽略文件
Cwind
git
有很多文件不必使用git管理。例如Eclipse或其他IDE生成的项目文件,编译生成的各种目标或临时文件等。使用git status时,会在Untracked files里面看到这些文件列表,在一次需要添加的文件比较多时(使用git add . / git add -u),会把这些所有的未跟踪文件添加进索引。
==== ==== ==== 一些牢骚
- MySQL连接数据库的必须配置
dashuaifu
mysql连接数据库配置
MySQL连接数据库的必须配置
1.driverClass:com.mysql.jdbc.Driver
2.jdbcUrl:jdbc:mysql://localhost:3306/dbname
3.user:username
4.password:password
其中1是驱动名;2是url,这里的‘dbna
- 一生要养成的60个习惯
dcj3sjt126com
习惯
一生要养成的60个习惯
第1篇 让你更受大家欢迎的习惯
1 守时,不准时赴约,让别人等,会失去很多机会。
如何做到:
①该起床时就起床,
②养成任何事情都提前15分钟的习惯。
③带本可以随时阅读的书,如果早了就拿出来读读。
④有条理,生活没条理最容易耽误时间。
⑤提前计划:将重要和不重要的事情岔开。
⑥今天就准备好明天要穿的衣服。
⑦按时睡觉,这会让按时起床更容易。
2 注重
- [介绍]Yii 是什么
dcj3sjt126com
PHPyii2
Yii 是一个高性能,基于组件的 PHP 框架,用于快速开发现代 Web 应用程序。名字 Yii (读作 易)在中文里有“极致简单与不断演变”两重含义,也可看作 Yes It Is! 的缩写。
Yii 最适合做什么?
Yii 是一个通用的 Web 编程框架,即可以用于开发各种用 PHP 构建的 Web 应用。因为基于组件的框架结构和设计精巧的缓存支持,它特别适合开发大型应
- Linux SSH常用总结
eksliang
linux sshSSHD
转载请出自出处:http://eksliang.iteye.com/blog/2186931 一、连接到远程主机
格式:
ssh name@remoteserver
例如:
ssh
[email protected]
二、连接到远程主机指定的端口
格式:
ssh name@remoteserver -p 22
例如:
ssh i
- 快速上传头像到服务端工具类FaceUtil
gundumw100
android
快速迭代用
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOExceptio
- jQuery入门之怎么使用
ini
JavaScripthtmljqueryWebcss
jQuery的强大我何问起(个人主页:hovertree.com)就不用多说了,那么怎么使用jQuery呢?
首先,下载jquery。下载地址:http://hovertree.com/hvtart/bjae/b8627323101a4994.htm,一个是压缩版本,一个是未压缩版本,如果在开发测试阶段,可以使用未压缩版本,实际应用一般使用压缩版本(min)。然后就在页面上引用。
- 带filter的hbase查询优化
kane_xie
查询优化hbaseRandomRowFilter
问题描述
hbase scan数据缓慢,server端出现LeaseException。hbase写入缓慢。
问题原因
直接原因是: hbase client端每次和regionserver交互的时候,都会在服务器端生成一个Lease,Lease的有效期由参数hbase.regionserver.lease.period确定。如果hbase scan需
- java设计模式-单例模式
men4661273
java单例枚举反射IOC
单例模式1,饿汉模式
//饿汉式单例类.在类初始化时,已经自行实例化
public class Singleton1 {
//私有的默认构造函数
private Singleton1() {}
//已经自行实例化
private static final Singleton1 singl
- mongodb 查询某一天所有信息的3种方法,根据日期查询
qiaolevip
每天进步一点点学习永无止境mongodb纵观千象
// mongodb的查询真让人难以琢磨,就查询单天信息,都需要花费一番功夫才行。
// 第一种方式:
coll.aggregate([
{$project:{sendDate: {$substr: ['$sendTime', 0, 10]}, sendTime: 1, content:1}},
{$match:{sendDate: '2015-
- 二维数组转换成JSON
tangqi609567707
java二维数组json
原文出处:http://blog.csdn.net/springsen/article/details/7833596
public class Demo {
public static void main(String[] args) { String[][] blogL
- erlang supervisor
wudixiaotie
erlang
定义supervisor时,如果是监控celuesimple_one_for_one则删除children的时候就用supervisor:terminate_child (SupModuleName, ChildPid),如果shutdown策略选择的是brutal_kill,那么supervisor会调用exit(ChildPid, kill),这样的话如果Child的behavior是gen_