技术综合

微信卡券创建 - 微信卡券开发​​笔记(二)

卡券创建-微信卡券开发笔记(二)所有内容以本期项目开发需求为主;一、卡券创建需要的字段i.card_type(卡券类型)本期以通用券为例。注意:确定卡券类型即确定之后的卡券参数,卡券基本参数数组中的键为generral_info;ii.lo...

74-Unix 域套接字地址结构

1.unix域协议简介不同于ipv4的AF_INET,unix域只用于本机进程间通信,它所使用的完全是另一套协议。在使用unix域的时候,socket函数的第一个参数必须指定为AF_LOCAL或者AF_UNIX,表示创建一个unix域套接字...

93-接收 ICMP 报文

如果你练习过前面的接收IP数据报的程序,相信写出这个不会很难。1.程序路径本文使用的程序托管在gitos上:http://git.oschina.net/ivan_allen/unp如果你已经clone过这个代码了,请使用gitpull更新...

46-不要将 IO 复用与 stdio 混合

别以为上一节我们修复了那个bug就没事了。还有一个非常隐秘的错误,这里必须要指出来:不要将stdio库提供的C语言函数与IO复用混合使用!!!1.程序路径代码托管在gitos上,请使用下面的命令获取:gitclonehttps://git....

17-TCP 协议(迟到的 ACK —— Windows )

1.引言我们知道,TCP协议中,需要对接收到TCP段进行确认。有两种方式可以减少TCP报文段.一种是累积确认,另一种是捎带确认。累积确认有时候,发送方发送速度非常快,接收方一下下接收到了好几个tcp段,可以通过累积确认的方式,一次确认好几个...

80-进程间传递描述符(策略)

万事俱备,只欠东风。现在就差如何进行程序结构设计了。我们已经知道,可以通过辅助数据传递描述符了,那么接下来怎么做?1.目标我们的目标是让进程fork一个子进程,子进程继承unix域套接字。子进程打开某个文件,然后将该文件描述符通过sendm...

详述 SQL 中的 distinct 和 row_number() over() 的区别及用法

1前言在咱们编写SQL语句操作数据库中的数据的时候,有可能会遇到一些不太爽的问题,例如对于同一字段拥有相同名称的记录,我们只需要显示一条,但实际上数据库中可能含有多条拥有相同名称的记录,从而在检索的时候,显示多条记录,这就有违咱们的初衷啦!...

77-Unix 域数据报回射服务器

同样的,这个程序根据之前的UDP回射服务器改写。1.程序路径程序路径:gitclonehttps://git.oschina.net/ivan_allen/unp.git如果你已经clone过这个代码了,请使用gitpull更新一下。本节程...

给技术人上的管理课:控制和计划

在开始讲任何的细节之前,我想先谈谈为什么要写这样的系列文章。众所周知,从事专业工作的人士,无论挂着什么样的头衔,就其日常工作的根本性质而言,基本上可以分为两大类,不妨就称为技术人和管理人吧。不用说,他们分别从事着的当然就是技术工作和管理工作...

视觉直观感受 7 种常用的排序算法

1.快速排序介绍:快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序n个项目要Ο(nlogn)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(nlogn)算法更快,因为它的内部循...

23种设计模式

目录创建型1.FactoryMethod(工厂方法)2.AbstractFactory(抽象工厂)3.Builder(建造者)4.Prototype(原型)5.Singleton(单例)结构型6.AdapterClass/Object(适配...

102-受限广播地址

这种也称之为本地广播地址,它的目标地址为255.255.255.255.意思是只在本网络进行广播,绝对不会被路由器转发。1.规则如果一台主机发送的IP数据报目标地址为255.255.255.255,则相当于向发送者所在的网络发送子网定向广播...