自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 JAVA讲义读书笔记(一)

JAVA 程序运行机制 计算机高级语言按程序的执行方式可分为编译型和解释型两种。编译型:通过使用专门的编译器,针对特定的平台将源代码一次性“翻译”成可被该平台硬件执行的机器码,并包装成该平台可识别的可执行文件格式,因为是一次性的编译成机器码,所以可脱离开发环境独立运行,但是移植有困难,因为是针对当前平台翻译包装的。现有C、C++、FORTRAN、Pascal等语言。解释型:使用专门的解释器对源程序逐

2016-08-31 21:53:54 386

原创 (TCP/IP卷一)ARP,RARP地址解析协议

概念 数据链路如以太网都有自己的寻址机制(常常为48bit地址),这是使用数据链路的网络层都必须遵守的。也就是说,你发给以太网的是32位IP地址,但是经由以太网发给另一个主机时它是以48位的以太网地址在传递,所以这里就要用到ARP地址解析协议和RARP逆地址解析协议。 ARP 为IP地址到对应的硬件地址之间提供动态映射。 RARP 是被那些没有磁盘驱动器的系统使用,它需要系统管理员进行手工

2016-08-25 22:01:52 2809

原创 C++实现一个半同步半异步线程池

半同步半异步线程池介绍为了解决任务较多时产生的线程因不断创建销毁而消耗过多系统资源的问题,而实现了线程池技术。大概思路:维护一个线程池,里面放有一定数量的线程。当任务到来时选出一个任务“接活”,任务完成后再将其放入池中。半同步半异步的三层:同步服务层:处理来自上层的任务请求,负责将它们放到同步队列里。同步排队层:来自上层的任务请求都会加到排队层中等待被第三层处理。但必须对大小加以控制,不然如果同

2016-08-23 10:21:40 1247

原创 值传递,引用传递,指针传递

原文地址: http://www.cnblogs.com/yanlingyin/archive/2011/12/07/2278961.html 值传递:形参是实参的拷贝,改变形参的值并不会影响外部实参的值。从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,不能传出。当函数内部需要修改参数,并且不希望这个改变影响调用者时,采用值传递。指针传递:形参为指向实参地址的指针,当对

2016-08-21 21:39:30 801

原创 线程控制(linux C)

线程是计算机中独立运行的最小单位,运行占用资源很小,宏观上线程同时执行。微观上通过系统分配时间片去的CPU控制权交替执行线程中的代码。当然多核情况下是可以并行的。目录线程优点线程私有数据线程的同步方法出错处理线程的优点 1.节省资源,节省时间。多进程时,每个进程都拥有独立的空间,而同进程下的多线程共享进程的地址空间。同时也节省了为其分配空间所花费的时间。 2.因为地址空间共享

2016-08-20 21:43:07 702

原创 简单的DOM Tree使用

因为需要从网页上找出学生信息,本来是要准备用正则表达式来匹配,但是翻遍了各种答案找到的匹配中文正则式都不对,大写的无奈,然后找到了这个办法来查找信息—DOM Tree。 DOM 树是指通过DOM将HTML页面进行解析。并生成的HTML tree树状结构和对应访问方法。采用一种直观且一致的方式将HTML文档进行模型化处理,并借此提供访问、导航和操作页面的简易编程接口。在网上找到一个图片觉得很简单易懂

2016-08-20 00:07:29 2885 1

原创 使用libcurl库获取网页信息(C++ php)

这周要做一个小项目,需要获得学生的账户名密码后,去本校教务系统验证是否正确并且抓一个网页信息下来。 查网上时候,可以通过发送POST或GET请求来实现,然后尝试用POST先。 首先安装libcurl库 sudo yum install libcurl安装好后之后代码中添加头文件curl/curl.h就可以使用curl的函数了。当时需要访问的正方网页(222.24.62.120)需要验证码,

2016-08-19 20:18:30 4457

原创 云服务器安装LNMP

CentOS系统下执行:wget -c http://soft.vpser.net/lnmp/lnmp1.1-full.tar.gz && tar zxf lnmp1.1-full.tar.gz && cd lnmp1.1-full && ./centos.shUbuntu系统下执行:wget -c http://soft.vpser.net/lnmp/lnmp1.1-full.tar.gz &&

2016-08-19 11:11:30 577

原创 I/O复用

1.函数原型int select(int nfds, fd_set* readfds, fd_set* writefds, fd_set* exceptfds, struct timeval* timeout);参数解释nfd:指定被监听文件描述符总数readfds,writefds,exceptfds:可读可写和异常等事件对应的文件描述符集合。timeout:设置sel

2016-08-15 10:21:47 470

原创 右值引用

转移语义的定义:右值引用是用来支持转移语义的。转移语义可以将资源从一个对象转移到另一个对象,这样能够减少不必要的临时对象的创建、拷贝以及销毁,能够大幅度提高 C++ 应用程序的性能。(注意:不是复制不是粘贴) 作用和剪切粘贴一样的,通过转移语义,临时对象的值能够转移到其他对象里。 当然要实现功能,就要定义相应的构造函数,我们先定义一个类。 class MyString{private:

2016-08-09 16:30:48 531 1

原创 MYSQL(一)

mysql的逻辑架构图 最上层:客户端通过用户名,主即命,密码等信息的认证连接到MYSQL服务器,每个客户端连接都会再服务器中拥有一个线程,这个连接的查询只会再这个线程中查询,线程的创建和销毁都由服务器来完成。 第二层:包含大多数核心服务。包括查询、分析、优化、缓存及所有内置函数。还有所有跨存储引擎都在这一层实现:存储过程、触发器、视图等。 第三层:包含了存储引擎。存储引擎负责MY

2016-08-04 17:23:12 485

原创 C++实现简单的定时器

定时器概念: 使用定时器的目的是周期性的执行一个任务,或者是到某一时间去执行某一任务。本章用来处理断开连接超时的客户端,为此,将每个定时时间封装成定时器,并使用链表,时间轮(也是链表),堆等容器类数据结构,对定时时间统一管理。在网络编程中,我们通过socket创建套接字,然后通过setsockopt()函数设置套接口选项。函数原型setsockopt( SOCKET s, int level,

2016-08-03 21:36:58 40940 3

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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