关闭
当前搜索:

swig 把c/c++ 封装成python可调用的so文动态链接库

注意:使用此种方法产生的so文件放在 python的site 目录下,可以直接import example,调用模块。 我们经常会看到python一些项目源码中,有的方法直接pass 如 [html] view plain copy def has_key(self, k): # real signature unknown; res...
阅读(4) 评论(0)

Python gevent

Python通过yield提供了对协程的基本支持,但是不完全。而第三方的gevent为Python提供了比较完善的协程支持。 gevent是第三方库,通过greenlet实现协程,其基本思想是: 当一个greenlet遇到IO操作时,比如访问网络,就自动切换到其他的greenlet,等到IO操作完成,再在适当的时候切换回来继续执行。由于IO操作非常耗时,经常使程序处于等待状态,有了ge...
阅读(21) 评论(0)

Python-- 异步IO(asyncio)

python asyncio 网络模型有很多中,为了实现高并发也有很多方案,多线程,多进程。无论多线程和多进程,IO的调度更多取决于系统,而协程的方式,调度来自用户,用户可以在函数中yield一个状态。使用协程可以实现高效的并发任务。Python的在3.4中引入了协程的概念,可是这个还是以生成器对象为基础,3.5则确定了协程的语法。下面将简单介绍asyncio的使用。实现协程的不仅仅是asy...
阅读(131) 评论(0)

linux 内核与用户空间通信之netlink使用方法

Linux中的进程间通信机制源自于Unix平台上的进程通信机制。Unix的两大分支AT&T Unix和BSD Unix在进程通信实现机制上的各有所不同,前者形成了运行在单个计算机上的System V IPC,后者则实现了基于socket的进程间通信机制。同时Linux也遵循IEEE制定的Posix IPC标准,在三者的基础之上实现了以下几种主要的IPC机制:管道(Pipe)及命名管道(Named ...
阅读(182) 评论(0)

Netlink机制详解

机制原理: Netlink 是一种特殊的 socket,它是 Linux 所特有的,由于传送的消息是暂存在socket接收缓存中,并不被接收者立即处理,所以netlink是一种异步通信机制。 系统调用和 ioctl 则是同步通信机制。 用户空间进程可以通过标准socket API来实现消息的发送、接收,在Linux中,有很多用户空间和内核空间的交互都是通过Netlink机制完成的,在L...
阅读(84) 评论(0)

Python之struct简介

一、struct简介        看到struct这么英文单词,大家应该并不陌生,因为c/c++中就有struct,在那里struct叫做结构体。在Python中也使用struct,这充分说明了这个struct应该和c/c++中的struct有很深的渊源。Python正是使用struct模块执行Python值和C结构体之间的转换,从而形成Python字节对象。它使用格式字符串作为底层C结构...
阅读(37) 评论(0)

Python ---偏函数(Partial)

一、什么是偏函数? (1)在Python的functools模块众多的功能中,其中有一个就是偏函数,我们称之为 partial function          模块的概念我们下一篇在细讲。 (2)我们都听过偏将军吧,在三国时代的官制中,系将军的辅佐,与裨将军两者都为杂号将军;今天我们要讲的偏函数,其实是函数的辅佐,什么意思呢,我们借助Python的help帮助函数,看...
阅读(62) 评论(0)

Python中定时任务框架APScheduler的快速入门指南

APScheduler是基于Quartz的一个Python定时任务框架,实现了Quartz的所有功能,使用起来十分方便。下面这篇文章主要跟大家介绍了Python中定时任务框架APScheduler的快速入门指南,需要的朋友可以参考借鉴,下面来一起看看吧。 前言 大家应该都知道在编程语言中,定时任务是常用的一种调度形式,在Python中也涌现了非常多的调度模块,本文将简要介绍...
阅读(73) 评论(0)

Socket心跳包机制

心跳包的发送,通常有两种技术 方法1:应用层自己实现的心跳包  由应用程序自己发送心跳包来检测连接是否正常,大致的方法是:服务器在一个 Timer事件中定时 向客户端发送一个短小精悍的数据包,然后启动一个低级别的线程,在该线程中不断检测客户端的回应, 如果在一定时间内没有收到客户端的回应,即认为客户端已经掉线;同样,如果客户端在一定时间内没 有收到服务器的心跳包,则认为连接不可用。 方法...
阅读(57) 评论(0)

Nova Suspend 和 Pause

Suspend/Resume 有时需要长时间暂停 instance,可以通过 Suspend 操作将 instance 的状态保存到宿主机的磁盘上。当需要恢复的时候,执行 Resume 操作,从磁盘读回 instance 的状态,使之继续运行。 这里需要对 Suspend 和 Pause 操作做个比较: 相同点 两者都是暂停 instance 的运行,并保存当前状态,之后可以通...
阅读(57) 评论(0)

(转载)libvirt 问题解决记录集

本篇记录在使用libvirt的时候遇到的一些情况,即解决方法. 出现Permission denied [root@localhost vm]# virsh start centos error: Failed to start domain centos error: internal error process exited while co...
阅读(462) 评论(0)

自动释放linux内存

因为装了apache,NND内存占用常常逼近1G,主机的总量也只有1G,好几次主机没反应了,没干啥就莫名其妙死机了,最近总是手动去释放内存,每次都是要输入: free -m sync echo 1 > /proc/sys/vm/drop_caches echo 2 > /proc/sys/vm/drop_caches echo 3 > /proc/sys/vm/drop_caches free ...
阅读(72) 评论(0)

Cache占用过多内存导致Linux系统内存不足问题排查

问题描述 Linux服务器内存使用量超过阈值,触发报警。 问题排查 首先,通过free命令观察系统的内存使用情况,显示如下: total       used       free     shared    buffers     cached Mem:      24675796   24587144      88652          0     357012    ...
阅读(129) 评论(0)

linux下的彩蛋和各种有趣的命令

Linux screenfetch 一个显示系统信息和主题信息的命令 使用方法 输入screenfetch 效果图 Linuxlogo 显示linux版本logo图片及系统信息 使用方法 输入linuxlogo 效果图 查看内置的所有图案 bboysoul@bboysoul ~/桌面 $ lin...
阅读(180) 评论(0)

OpenStack Pike 版本新功能盘点

1. OpenStack 计算服务(Nova)  Cells v2 多Cell部署:部署将默认使用单Cell;从这个版本开始,你可以使用 Cells v2 API 创建多Cell 的环境了,尽管它还有一些局限。Cells v1 现在被标记为被弃用了。重写 Nova 配额系统,在资源被创建时计数:如果所申请的资源创建失败,你会得到错误;你不需要做任何改动就可以使用该功能。利用  PCIWeig...
阅读(71) 评论(0)
352条 共24页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:233061次
    • 积分:3101
    • 等级:
    • 排名:第13003名
    • 原创:15篇
    • 转载:337篇
    • 译文:0篇
    • 评论:16条
    文章分类
    最新评论