首页
学习
活动
专区
工具
TVP
发布

蓝天

专栏作者
526
文章
828672
阅读量
41
订阅数
零基础GO入门笔记
1. GoLand是一个比较好用的IDE,但只免费试用30天,也可用免费的vscode,简单代码可直接使用notepad+,甚至vim;
一见
2020-03-05
6380
Go模块编译问题及解决方法
build command-line-arguments: cannot load google.golang.org/grpc: module google.golang.org/grpc: Get https://proxy.golang.org/google.golang.org/grpc/@v/list: dial tcp 172.217.24.17:443: i/o timeout
一见
2020-02-26
4.2K0
C程序中的raise和kill两个函数有何不同?
在多线程程序中,进程给自己发SIGTERM信号退出,应当调用“kill(getpid(), SIGTERM)”,而不是“raise(SIGTERM)”。
一见
2020-02-13
1.6K0
运行程序时报错“Value too large for defined data type”
此错误对应的出错代码为EOVERFLOW,原因可能是目标文件超过2GB大小。
一见
2020-02-13
1.8K0
如何保证最少消费一次redis的list队列数据
简使用pop,不能保证最少消费一次,比如pop超时可能中途丢失,或者消费者处理过程中异常而未能处理完。
一见
2019-09-02
1.1K0
REdis一致性方案探讨
REdis功能强大众所周知,能够大幅简化开发和提供大并发高性能,但截止到REdis-5.0.5仍然存在如下几大问题:
一见
2019-06-19
6540
C++标准库之string返回值研究
1) GCC默认开启了返回值优化(RVO),除非编译时指定“-fno-elide-constructors”;
一见
2019-03-20
1.2K0
实战C++对象模型之成员函数调用
先说结论:C++的类成员函数和C函数实质是一样的,只是C++类成员函数多了隐藏参数this。
一见
2019-03-20
9830
Apache Thrift的C++多线程编程定式
Facebook贡献给Apache的开源RPC组件Thrift有着广泛的应用,C++中使用Thrift也十分普遍,但由于Thrift的Handler会被多个线程调用,因而多线程中应用并不直接的友好,利用C++的“thread_local”特性或GCC的“__thread”特性可化简这一问题。
一见
2019-03-20
6890
std::string的拷贝赋值研究
说明:以下涉及的std::string的源代码摘自4.8.2版本。 结论:std::string的拷贝复制是基于引用计数的浅拷贝,因此它们指向相同的数据地址。 // std::string类定义 typedef basic_string string; template class basic_string { private:     // _Alloc_hider是模板类basic_string内嵌struct     struct _Alloc_hider :
一见
2019-03-20
3.3K0
Awk学习笔记
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk的处理文本和数据的方式是这样的,它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfred Aho、Brian Kernighan、Peter Weinberger。gawk是awk的GNU版本,它提供了Bell实验室和GNU的一些扩展。下面介绍的awk是以GUN的gawk为例的,在linux系统中已把awk链接到gawk,所以下面全部以awk进行介绍。
一见
2019-03-14
2.4K0
LinuxThread VS NPTL
《原文出自http://blog.csdn.net/guosha, 转载请注明出处》
一见
2019-03-14
8550
用awk数组处理两个文件的例子
收了本论坛的三个例子 QUOTE: 1、用某一文件的一个域替换另一个文件中的的特定域? http://bbs.chinaunix.net/forum/viewtopic.php?t=50001
一见
2019-03-14
1.1K0
Bash 强大的History 命令
Bash的使用GUN readline库来处理用户输入,所以BASH也有emacs/vi 两种模式(主要是快捷键不同)(4DOS没有) 一般来说BASH缺省是emacs模式,如果想变成vi模式(如果你是vi用户)就可以了,然后你就可以用和vi一样的快捷键来编辑命令行了.(4DOS没有) set -o vi 不好意思有点远了,接下来还是history命令方面 Emacs and Vi history 编辑快捷键: Emacs 模式: CTRL-p 历史列表上一个. CTRL-n 历史列表下一个. CTRL
一见
2019-03-14
8610
Linux下的strerror是否线程安全?
man strerror即可看到相关说明,strerror_r是线程安全的,但不带_r的strerror是非线程安全的。
一见
2019-03-14
1.2K0
进一步理解指针:一维数组和二维数组转换
要知道这个输出,最关键的是要理解指针操作的“加”和“减”,假设有一指针ptr,则“ptr”中的“1”是指ptr所指类型的大小。因此上述代码中的“&m+1”中的“1”实质是“sizeof(m)”,而后一个“1”则“sizeof(m[0])”。 为什么“&m+1”中的“1”是“sizeof(m)”?根本原因在于“&a”实际是一个二维数组“int (*)[5]”的首地址,而不是一维数组“int [5]”的首地址,看下面这段代码就容易理解:
一见
2019-03-14
1.1K0
Raft协议学习笔记
常见的一致性协议主要有:PaxOS、Raft、ZAB、PacificA等。同PaxOS,Raft也不考虑拜占庭将军问题(Byzantine failures,注:比特币采用工作量证明PoW和股权证明PoS解决了拜占庭将军问题)。
一见
2019-03-14
1K0
rapidjson常见使用示例
rapidjson相比jsoncpp性能高出太多,使用接口一样的简单的。官方中文帮助文档:http://rapidjson.org/zh-cn/。
一见
2019-03-14
6.9K0
常见指针定义解读
最近做的C/C++技术面试比较多,发现了一些共同的问题,对于如下所示的指针认识,多数面试者都答错了,作为过来人,这种情况还可以理解的,放在一起确实有些复杂。 int *p; int *p[8]; int (*p)[8]; int (*p)(); 为了能朴素的理解,加上注释说明,这下是不是可以非常轻松明白的掌握了? int *p;      // p为指向int值的指针,也可以说是指向一维数组的指针,假如有一个一维数组:int m[8],则可:p = m; int *p[8];   // p为一个一维数组,数组元素为int*类型,它和数组int p[8]都是同一类型,只不过一个元素类型为int*,一个是int int (*p)[8]; // p为一个指向二维数据的指针,数组元素为int类型,假如有二维数据:int m[1][8],则可:p = m; int (*p)();  // p为一个指向函数的指针,假设有一个函数:int foo(),则可:p = foo; 下面两个了? int (**pa)[8]; int (**pb)(); 不用怕,只是多了个*,也就是指向指针的指针。假设有:int m[1][8]; int (*p)[8] = m;,则:pa = &p。 除此之外,仍然有很多人搞不明白构造和析构的次顺,不建议去背,带理性去思考,顺序错了,可是要出大问题的,比如子类构造中可以使用父类的成员,那么必须父类要构造在前。
一见
2018-08-10
1630
C++11中的to_string
C++11之前,标准库没有提供数字类型转字符串的函数,需要借助sprintf、stringstream等,现在C++11提供了std::to_string函数,可以直接使用了:
一见
2018-08-10
4670
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档