自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 c语言的字节对齐和指针变量与整数相加减

变量地址是其宽度的整数倍,例如一个short变量地址是2的整数倍,一个int变量的地址是4的整数倍。结构体地址是其内最大宽度变量的整数倍。结构体总大小:N = Min(最大成员宽度,对齐参数),N的整数倍。 1、指针类型的变量可以加、减一个整数,但不能乘或除。2、指针类型变量和其他整数相加减时:指针类型变量 +N = 指针类型变量 + N*(去掉一个*后类型宽度)指针类...

2018-08-30 23:38:24 958

转载 Go语言中Interface详解

前言最近在看Go语言的面向对象的知识点时,发现它的面向对象能力全靠 interface 撑着,而且它的 interface 还与我们以前知道的 interface 完全不同。故而整个过程不断的思考为什么要如此设计?这样设计给我们带来了什么影响?interface 我不懂你Rob Pike 曾说:如果只能选择一个Go语言的特 性移植到其他语言中,他会选择接口被Go语言设计者如此看...

2018-08-29 11:53:21 203

转载 go语言函数作为参数传递

package mainimport "fmt"import "time"func goFunc1(f func()) { go f() }func goFunc2(f func(interface{}), i interface{}) { go f(i)}func goFunc(f interface{}, args... interfac...

2018-08-29 10:17:43 1062

转载 Go包导入与Java的差别

闲暇时翻阅了近期下载到的电子书《Go in Practice》 ,看到1.2.4 Package Management一节中的代码Demo,感觉作者对Go package导入的说法似乎不够精确:“Packages are imported by their name”(后续的说明将解释不精确的原因)。联想到前几天遇到的一个Java包导入的问题,让我隐约地感觉Java程序员很容易将两种语言的Pack...

2018-08-24 18:31:06 738

原创 Golang使用FastDFS系统

使用Ubuntu系统部署FastDFS系统,参见:https://www.cnblogs.com/Leo_wl/p/6731647.html如果编译安装过程中有报错,可用以下办法解决:下载最新版nginx: wget -c https://nginx.org/download/nginx-1.12.1.tar.gz下载最新版fastdfs-nginx-module: wget ht...

2018-08-15 14:40:58 4138 1

原创 redis哨兵与go语言访问接口

哨兵的介绍和部署请参见:https://blog.csdn.net/men_wen/article/details/72724406go语言访问接口://建立连接sf := &redis.FailoverOptions{ // The master name. MasterName: "mymaster", // A seed list of host:port ad...

2018-08-15 14:27:55 3281 2

原创 c语言read()返回-1,errno:Connection reset by peer

问题描述:服务器端执行完send()后调用close()关闭socket,然后exit()正常退出。客户端read()函数返回-1,errno104 :   Connection reset by peer,查了一下原因:这意味着收到了TCP RST包,可以使用tcpdump + wireshark抓包分析,并且连接现在已经关闭,这种情况可能是因为对方崩溃,或者对方调用了close()函数。...

2018-08-11 13:55:40 6068

原创 go 参数传递

 直接看例子:package mainimport "fmt"func main() { b := false fmt.Println("b's address is:", &b) bo(b) fmt.Println(b) } func bo(b bool) { fmt.Println("b's address is:", &...

2018-08-03 16:55:34 391

原创 go []interface{}的类型转换

package mainimport ( "fmt" "strings")func getName(params ...interface{}) string { var stringSlice []string for _, param := range params { stringSlice = append(stringSlice...

2018-08-03 16:18:24 18136 2

原创 go变长参数

go语言中变长参数,形参和实参该采用如下方式传递:package mainimport "fmt"func show(args ...interface{}) { for _, v := range args { fmt.Println(v) }}func main() { slice:=[]interface{}{1,2,3,4} ...

2018-08-03 16:16:31 600

原创 myeclipse新手碰到的一些问题

安装JREWindow->Preferences->Java->Installed JREs清理错误Project->clean添加jar包Project->Properties->Java Build Path ->Libraries->Add JARs选择jdk路径JRE System Library ->Pro...

2018-08-01 08:02:52 328

转载 golang sync.Once的用法

sync.Once.Do(f func())是一个挺有趣的东西,能保证once只执行一次,无论你是否更换once.Do(xx)这里的方法,这个sync.Once块只会执行一次。package main import ( "fmt" "sync" "time") var once sync.Once func main() { for i, v := range m...

2018-08-01 00:13:59 1188

转载 Centos7取消命令行与VIM的蜂鸣警告声音

修改需要root权限 首先是命令行的vim /etc/inputrc然后将set bell-style none前面的#删掉:wq 保存退出 然后是vim的vim /etc/bashrc在开始的地方加上一句 setterm -blength 0:wq保存退出然后shutdown -r now重启即可转载地址:https://blog.cs...

2018-08-01 00:06:10 316

转载 ubuntu修改主机名

一、 deb/ubuntu上永久修改 :查看主机名:修改主机名:重启后生效---------------------------------------------------------- redhat/centos上永久修改: [root@localhost ~]# cat /etc/sysconfig/network    NETWORKING=yes...

2018-07-31 22:57:32 288

原创 Golang的一些缺点

1.右大括号不允许换行,否则编译报错;不允许包含未使用的包(设置vscode工具,保存文件时可自动修改格式)2.不允许有未使用的变量(vscode工具无法解决)3.错误处理原始,虽然引入了defer、panic、recover处理出错后的逻辑,函数可以返回多个值,但基本依靠返回错误是否为空来判断函数是否执行成功,if语句较多,比较繁琐,程序没有java美观。(官方解释:提供了多个返回值,处...

2018-07-24 23:03:25 2856 6

原创 suse和centos7防火墙添加端口

suse打开配置文件vi /etc/sysconfig/SuSEfirewall2添加端口=========FW_SERVICES_EXT_TCP=""重启防火墙rcSuSEfirewall2 restartStarting Firewall Initialization (phase 2 of 2) SuSEfirewall2: Warning: no interfa...

2018-07-20 15:26:03 820

转载 匿名内部类中关于new Runnable()的使用

  匿名内部类也就是没有名字的内部类,正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写。但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 1、继承一个父类的匿名内部类实现:abstract class Peopl...

2018-07-20 15:07:40 700

原创 cmd中查找文件和文件内容

1、在cmd中查找文件,例如在c盘下查找3.txtdir c:\3.txt /s /b/s 显示指定目录和所有子目录中的文件。/b 使用空格式(没有标题信息或摘要)。2、查找d盘aaa目录下包含abc的所有文件findstr /s /n "abc" d:\aaa\*/s 在当前目录和所有子目录中搜索匹配文件。/n  在匹配的每行前打印行数。3、查找可执行文件使用wh...

2018-07-20 14:24:36 56630

原创 windows下cmd查看占用端口的进程

在cmd命令行首先查找占用端口的进程号netstat -aon|findstr 49157再查找进程名tasklist|findstr 2720

2018-07-20 14:22:34 163

原创 Golang创建协程与Python创建进程资源消耗

Golang创建协程消耗很少资源,创建协程可以说有点随心所欲,定时多久时间后执行任务可以创建协程,完成某个比较耗时的异步函数可以创建协程等等。 首先用Python起任务进程,在虚拟机上进程上限200左右,运行所需时间1532059031.43438631532059032.7786460import osimport timeimport multiprocessingfro...

2018-07-20 12:14:44 757

原创 创建守护进程

在Linux下有时需要在程序启动时成为守护进程,列举了所需操作和作用。 #include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/types.h>#include <sys/stat.h>//包含头文件void daemon(){ ...

2016-05-30 22:22:30 169

空空如也

空空如也

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

TA关注的人

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