logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

STL源码学习--vector使用方法总结

一、容器vector使用vector必须包含头文件:#include型别vector是一个定义于namespace std内的template:[cpp]view plaincopyprint?templateclass _Ty,      class _Ax = allocator >  第二个参数定义内存模型。我们一般采用默认的内存模型。

生产者消费者模型(Linux系统下的两种实现方法)

生产者消费者问题是同步问题中的一种常见情况,借用一下维基百科的话生产者消费者问题(英语:Producer-consumer problem),也称有限缓冲问题(英语:Bounded-buffer problem),是一个多线程同步问题的经典案例。该问题描述了两个共享固定大小缓冲区的线程——即所谓的“生产者”和“消费者”——在实际运行时会发生的问题。生产者的主要作用是生成一定量的数据放到缓冲区中

ubuntu 图形界面和字符界面之间的快速切换

1、按ALT+CTRL+F1切换到字符界面(Linux实体机)     如果是VMware虚拟机安装的Linux系统,则切换到字符界面的时候需要以下操作     按下ALT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F1。这样就可以切换到字符界面了。2、按ALT+CTRL+F7切换到图形界面(Linux实体机)     如果是VMware虚拟机安装的Linux系

#linux
VMware 下扩展linux硬盘空间

很多人在学习Nutch、Hadoop或者熟悉Linux操作系统时都会选择在VMWare上安装Linux虚拟机,而又往往不想分配给Linux虚拟机足够大的硬盘空间,这就容易导致使用Linux一段时间后,发现虚拟机上的硬盘空间不够了,此时怎么解决?有的人直接选择了重新安装Linux虚拟机,但是下一次硬盘又不够了呢,还要重新安装操作系统吗,那再下一次呢?这种方法势必会进入一个重复无聊的过程,除了增加安装

#操作系统
TCP性能优化之避免大量握手

这个标题看起来可能有点笼统,请大家谅解:)先说说这个优化场景,和《TCP性能优化之避免慢启动》是一个场景。问题的起因在海量用户高并发访问的大型网站后台,有一些基本的系统维护需求。比如迁移海量小文件,就是从一些机器拷贝海量小碎文件到另一些机器,来完成一些系统维护的基本需求。请不要小看这样的需求,这是服务器领域乃至云计算领域几个最复杂的问题之一,量变到质变,由量大引

Ubuntu :: Mount Failure - Press S To Skip Mount Or M For Manual Recovery

其实有可能出现和这个问题很相似的问题,在虚拟机很久没有启动过再次启动会出现检查磁盘的消息,这个是正常的,这种情况可以选择跳过。如果是文件系统挂载不上去,可以选择手动挂载,时间M,进入字符界面#:mount -o remount,rw /#:dpkg --configure -a然后

#linux
字符设备的注册(struct cdev结构体的使用解释)

在linux内核2.6版本以前,注册一个字符设备的的经典方法是使用register_chrdev,相应的从设备中注销字符设备的方法是unregister_chrdev,而在2.6版本以后,字符设备函数的注册与注销使用的是如下一套方法:#include struct cdev *cdev_alloc(void);//分配一个独立的cdev结构 void cdev_init(struct

#ubuntu
LINUX使用的缓存,缓冲区高速缓存

Linux使用的缓存不管在硬件设计还是软件设计中,高速缓存是获得高性能的常用手段。Linux使用了多种和内存管理相关的高速缓存。1.缓冲区高速缓存:    缓冲区高速缓存中包含了由块设备使用的数据缓冲区。这些缓冲区中包含了从设备中读取的数据块或写入设备的数据块。缓冲区高速缓存由设备标识号和块标号索引,因此可以快速找出数据块。如果数据能够在缓冲区高速缓存中找到,则系统就没有必要在物理

linux内核分析--内核中的数据结构之双链表(一)

下面直接进入正题:在了解了基本内容看具体实现,只知道数据成员list的地址,怎样去访问自身以及其他成员呢?在include/linux/list.h头文件中可以看到这段代码!#define list_entry(ptr,type,member)/container_of(ptr,type,member)其中container_of这个宏在/include/linu

#链表
TIME_WAIT状态的快速恢复和重用

声明一点:Linux中是无法修改tcp的TIME_WAIT值的,除非重新编译,起码我是没有找到怎么改。值得注意的是,net.ipv4.tcp_fin_timeout这个参数是FIN_WAIT_2的值,而不是TIME_WAIT的值。我不知道为何很多人都会把它当成是TIME_WAIT的值,想了一下,我觉得是两点:1.TIME_WAIT过于耀眼,以至于所有出现timeout,加上里面有个tcp的

    共 36 条
  • 1
  • 2
  • 3
  • 4
  • 请选择