分类:: Learning

0

socket编程的一些问题

多个进程监听一个socket对于监听一个socket来说,多个进程同时在accept处阻塞,当有一个连接进入,多个进程同时被唤醒,但之间只有一个进程能成功accept,而不会同时有多个进程能拿到该连接对象,操作系统保证了进程操作这个连接的安全性。 扩展:上述过程,多个进程同时被唤醒,去抢占accept到的资源,这个现象叫“惊群”,而根据网上资料,Linux 内核2.6以下,accept响应时只有一

0

flask学习笔记

Flask安装flask依赖两个外部库,一个是Werkzeug,一个提供WSGI支持,还有一个是Jinja2负责解析模版。 virtualenv它提供了分离运行环境的功能。 123makdir my projectcd myprojectvirtualenv venv 1. venv/bin/activate 最简单的应用1234567from flask import Flask app = F

0

HTTP学习以及push机制

什么是长连接当客户端用TCP/IP协议从服务器上获取数据的时候,都需要一个连通客户端和服务器的连接,连接通过三次握手建立,通过四次握手释放。如果每次获取数据都创建一个独占的连接,并在数据传输完毕后释放,这种连接叫做短连接。而一个能够供多个请求多次传输数据,并在数据传输后保活一段时间的连接,我们称之为长连接。(转载自http://www.chanpin100.com/archives/58040)。

0

STL学习笔记-4-序列式容器

vectorvector实际上是一个大小不定的线性空间。 vector提供的是Random Access Iterators。 如果加入新的元素时,空间不足以容纳,就会去请求更大的空间,来容纳。 12345678void push_back(const T& x) { if (finish != end_of_storage) { construct(f

0

python的web server

shebang这个就是放在python代码的第一句。 1#!/usr/bin/env python 这个是为了让程序找到python的位置,如果这句话不起作用的话,可以直接使用完整的python路径。 CGI(Common Gateway Interface)服务器接收到动态请求的时候,请求CGI脚本,然后启动python程序,将URL请求转换为python的标准输入,然后从python程序的标准

0

STL学习笔记-2.3内存基本处理工具

2.3 内存基本处理工具这里面主要包括了三个函数 uninitialized_copy() uninitialized_fill() uninitialized_fill_n() 对应着高层次的函数 copy() fill() fill_n() 这些都是STL算法。 uninitialized_copy()讲某一区间的内容复制到另一个区间: 配置内存区块,足以包含范围内的所有元素 使用该

0

STL学习笔记-1.1~2.2

笔记p45出现了::operator new和::operator delete,这个地方比较难理解。首先,先把new和delete当作一个操作符,因此要重载它的时候需要加个operator。 1::operator new 这个语句的意思是在全局命名空间下的new操作符。 重要概念模版特化函数模版特化比如设置了一个带有模版的函数,但是我想对其中的某种类型参数的函数进行单独定义。如果不含有这个机制