- 博客(12)
- 收藏
- 关注
原创 TCP 传输控制协议(二、连接管理)
TCP 传输控制协议(二、连接管理)引言TCP是一种面向连接的单播协议。在数据交换之前,双方必须先建立连接。TCP的服务模型是一个字节流。TCP会修复下层(如IP层,链路层等)产生的数据传输问题,对于数据交换来说,大致有三个方面的问题:丢包、重复和错误。为了解决这些问题,TCP引入了连接的概念。***可以说,UDP和TCP本质上最大的区别在于TCP需要维护连接。TCP由于要维护连接所以TCP是有状态的,相比于无状态的UDP,TCP在妥善处理多种TCP状态问题时需要面对大量的细节问题,比如连接的建立、终止
2021-10-11 09:31:38
239
原创 Python源码解读之二 万物皆对象(下)
初探PyObject首先我们再次来回顾一下,在上一篇提到过,“类”和“对象”这两个概念在Python中都是用对象实现的。“类"是一种对象,称为"类型对象”,“类"实例化得到的也是"对象”,称为"实例对象"。实现对象机制的基石–PyObjectPython中的任何对象在C中都对应一个结构体实例,在Python中创建一个对象,等价于在C中创建一个结构体实例。所以Python中的对象本质上就是C中malloc函数为结构体实例在堆区申请的一块内存。/* Nothing is actually declare
2021-09-16 14:40:20
346
原创 Python源码解读之一 万物皆对象(上)
万物皆对象初探对象Python中一切皆对象,在Python的世界里面,所有东西都是对象。整型、字符串、字典、int、str、list、class自定义类都是对象。像int、str、list等基本类型,以及我们自定义的类,由于它们可以表示类型,因此我们称之为类型对象;类型对象实例化得到的对象,我们称之为实例对象。不管是哪种对象,它们都属于对象。所以在Python当中,不管是“类”还是“对象”都是由对象实现的。对象是由类实例化得到的,所以对象一定有类型,对象被谁实例化决定了它的类型。那么int,t
2021-09-16 14:39:37
343
原创 TCP 传输控制协议(一、初步了解)
title: TCP 传输控制协议(一、初步了解)date: 2021-09-04 14:31:15tags:TCP rfc793TCP 传输控制协议(一、初步了解)引言上一章我们讨论的是自身不包含可靠传递数据机制的协议。一般这种协议会使用一种像校验和或CRC这样的数学函数来**检测接收到的数据是否有差错,但是他们不会尝试去纠正差错。不管是IP还是UDP都没有实现差错纠正。差错纠正一般有两种大的思路:校正和重传校正:通信媒介可能会丢失或改变被传递的消息,使用差错校正码来纠正通信问题是处理差.
2021-09-16 09:54:38
265
原创 UDP 用户数据报协议
UDP 用户数据报协议引言 UDP是一种保留消息边界(不合并,不拆分)的简单的面向数据报的传输层协议。使用UDP协议的时候,一般来说,每个被应用程序请求的UDP输出操作只生产一个UDP数据报,并组装成一份待发送的IP数据报(与面向数据流的协议不同,如TCP,应用程序写入的数据与真正在单个IP数据报里传送的内容可能没有什么联系)。UDP不提供差错纠正、队列管理、重复消除、流量控制和拥塞控制,只提供差错校验(校验和)。(注:对于UDP网上有各种各样的描述,但是我个人觉得对UDP描述最到位的还是UDP自己
2021-09-16 09:52:20
1591
原创 erlang随机数实现新旧版本对比
erlang的内置随机数,每次调用会更新进程字典里的random_seed变量,这样在同一个进程内每次调用random:uniform/0 时,随机数种子都不同,所以生成的随机数都不一样(调用完random:uniform/0 后,可以用get(random_seed)查看更新后的种子值)。但是在旧版本的random模块中,存在着比较明显的漏洞,使用random:uniform/0 的时候...
2019-12-17 14:25:56
314
原创 关于oracle设置字段自增的方法
最近在使用Oracle数据库的时候发现和MYsql有点区别,就是不像mysql可以在建表的时候就设定自增,需要自己写序列和触发器,话不多说,上代码。/*创建序列*/CREATE SEQUENCE seq_表名称INCREMENT BY 1 -- 每次加几个START WITH 1 -- 从1开始计数NOMAXVALUE -- 不设置最大值NOCYCLE -- 一直累加,不循环NOC
2016-04-05 15:34:31
611
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人