python 队列 queue

Queue是python标准库中的线程安全的队列(FIFO)实现,提供了一个适用于多线程编程的先进先出的数据结构,即队列,用来在生产者和消费者线程之间的信息传递 基本FIFO队列 class Queue.Queue(maxsize=0) FIFO即First in First Out,先...

2019-04-30 16:04:20

阅读数 50

评论数 0

linux c 中 当前函数名 文件名 行 可变参 宏使用

在linux编程中,当文件数量变的众多之后,使用gdb调试就是一场灾难。因此在程序中加入合理的打印信息,定位错误出现的文件名,函数名,行号等信息,能更高效的定位到问题的所在。 下面定义了宏,分别是WARNING,INFO,ERROR,SHOW_TIME,DEBUG等。利用了 __FILE__,_...

2019-04-29 16:34:53

阅读数 69

评论数 0

linux c 实现try catch异常捕获

前言: 像如java这样的面相对象语言,异常处理机制让其代码更具健壮性,可以代码捕获到如算术异常,空指针异常等,俘获并能够在预知情况下进行相应处理。那么对于C而言,是否能实现其功能? 简要分析: Linux有对线程或者进程退出时有一种信号量机制,而默认情况下,这种signal是系统自己处理的...

2019-04-28 20:25:25

阅读数 247

评论数 0

epoll与tornado 简介

网络IO的模型中,之前介绍了select模型。select 确实是一个简明好用的模型。可是现在的服务器却越来越少采取这样的模型,原因之一就是它的性能让人担忧。虽然后来升级了poll模型,本质上还是和select模型类似。当然,当一个技术逐渐被人放弃的时候,很大程度上是有了更好的替代方案。没错,还有...

2019-04-28 16:54:48

阅读数 97

评论数 0

python异步非阻塞IO多路复用Select/Poll/Epoll使用

有许多封装好的异步非阻塞IO多路复用框架,底层在linux基于最新的epoll实现,为了更好的使用,了解其底层原理还是有必要的。 下面记录下分别基于Select/Poll/Epoll的echo server实现。 Python Select Server,可监控事件数量有限制: #!/usr/...

2019-04-28 11:15:25

阅读数 45

评论数 0

python 信号模块 signal

在了解了Linux的信号基础之 后,Python标准库中的signal包就很容易学习和理解。signal包负责在Python程序内部处理信号,典型的操作包括预设信号处理函数,暂 停并等待信号,以及定时发出SIGALRM等。要注意,signal包主要是针对UNIX平台(比如Linux, MAC OS...

2019-04-28 10:33:41

阅读数 75

评论数 0

python 命令行参数处理 getopt模块详解

有时候我们需要写一些脚本处理一些任务,这时候往往需要提供一些命令行参数,根据不同参数进行不同的处理,在Python里,命令行的参数和C语言很类似(因为标准Python是用C语言实现的)。在C语言里,main函数的原型为int main(int argc, char **argv),这里主要指lin...

2019-04-28 10:14:29

阅读数 25

评论数 0

linux c 命令行参数处理函数 getopt()和getopt_long()

在实际编程当中,自己编写代码处理命令行参数是比较麻烦且易出错的。一般我们会直接使用getopt()和getopt_long()函数,下文将介绍具体的使用方法。 getopt() getopt()用于处理”单字母“选项,如-a,-t等。函数声明如下: #include <uni...

2019-04-28 09:50:09

阅读数 36

评论数 0

Python编写守护进程程序思路

1. fork子进程,父进程退出 通常,我们执行服务端程序的时候都会通过终端连接到服务器,成功连接后会加载shell环境,终端和shell都是进程,shell进程是终端进程的子进程,通过ps命令可以很容易的查看到。在这个shell环境下一开始执行的程序都是shell进程的子进程,自然会受到shel...

2019-04-26 16:17:22

阅读数 51

评论数 0

Linux 守护进程的原理与实现

一、守护进程概述 在linux或者unix操作系统中在系统的引导的时候会开启很多服务,这些服务就叫做守护进程。为了增加灵活性,root可以选择系统开启的模式,这些模式叫做运行级别,每一种运行级别以一定的方式配置系统。 守护进程是脱离于终端并且在后台运行的进程。守护进程脱离于终端是为了避免进程在执...

2019-04-26 16:10:16

阅读数 39

评论数 0

高并发网络编程之epoll详解

在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。 本文便来介绍epoll的实现机制,并附带讲解一下...

2019-04-26 15:35:53

阅读数 55

评论数 0

简单剖析B树(B-Tree)与B+树

注意:首先需要说明的一点是:B-树就是B树,没有所谓的B减树 引言 我们都知道二叉查找树的查找的时间复杂度是O(log N),其查找效率已经足够高了,那为什么还有B树和B+树的出现呢?难道它两的时间复杂度比二叉查找树还小吗?   答案当然不是,B树和B+树的出现是因为另外一个问题,那就是磁盘I...

2019-04-26 15:10:35

阅读数 55

评论数 1

图解 二叉查找树 红黑树

红黑树,对很多童鞋来说,是既熟悉又陌生。熟悉是因为在校学习期间,准备面试时,这是重点。然后经过多年的荒废,如今已经忘记的差不多了。如果正在看文章的你,马上快要毕业,面临着找工作的压力;又或者你觉得需要将这块知识重新复习一遍;又或者只是看看,那么恭喜你,赚到了。那么我将带领大家重新认识下红黑树,用简...

2019-04-26 14:06:25

阅读数 41

评论数 0

Windows软件授权管理工具 slmgr命令详解

slmgr是Software LicenseManger的简称,是Windows软件授权管理工具。slmgr是管理系统激活和密钥、证书的主要组件。slmgr的所有功能都是通过slmgr.vbs提供的,采用VBScript命令行方式执行。图形界面中许多与该命令行相关的激活行为,比如系统属性等,都是通...

2019-04-24 10:45:33

阅读数 171

评论数 0

搭建自己的KMS服务器激活WINDOWS

前言 vlmcsd是KMS服务器的模拟器,用于在线激活windows和office 安装vlmcsd 下载最新的压缩包:https://github.com/Wind4/vlmcsd/releases 我使用的是CentOS 7.5,直接wget https://github.com/...

2019-04-24 10:37:46

阅读数 1035

评论数 0

变量命名规范 匈牙利 下划线 骆驼 帕斯卡

匈牙利命名法 其基本原则是,变量名=属性+类型+对象描述。其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分 广泛应用于像MicrosoftWindows这样的环境中。Windows编程中用到的变量(还包括宏)的命名规则匈牙利命名法,这种命名技术是由一位能干的Micros...

2019-04-24 07:51:33

阅读数 87

评论数 0

反射型 DDoS 攻击的原理和防范措施

随着僵尸网络的兴起,同时由于攻击方法简单、影响较大、难以追查等特点,分布式拒绝服务攻击(DDoS,Distributed Denial of Service)得到快速壮大和日益泛滥。 成千上万主机组成的僵尸网络为 DDoS 攻击提供了所需的带宽和主机,形成了规模巨大的攻击和网络流量,对被攻击网络造...

2019-04-22 16:25:00

阅读数 153

评论数 0

百度搜索 带网页特效的关键词

百度网页上也是带有特效的,不过,这个特效技术早在很久以前就有了的,只不过很少有人知道,百度本身也并没有进行宣传过。看来百度是想在网友们浏览网页时突然跳出来一些特效,带来惊喜的。小面就来看看这些特效都有哪些 在 百度搜索框 输入以下 关键词,才会触发的 翻转 效果:网页翻转过来 ...

2019-04-22 15:31:47

阅读数 81

评论数 0

wireshark 总体结构

1. 总体结构 wireshark的总体结构如下图所示。 2. 功能模块 模块名 功能 源码子目录 GTK/Qt 处理所有的用户输入/输出(所有的窗口,对话框等等) /...

2019-04-22 11:31:17

阅读数 34

评论数 0

wireshark C插件开发

1. Wireshark对C插件的支持 每个解析器解码自己的协议部分, 然后把封装协议的解码传递给后续协议。 因此它可能总是从一个Frame解析器开始, Frame解析器解析捕获文件自己的数据包细节(如:时间戳), 将数据交给一个解码Ethernet头部的Ethernet frame解析器, ...

2019-04-22 10:46:07

阅读数 79

评论数 0

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