TCP三次握手/四次挥手 及 状态变迁图



TCP三次握手/四次挥手及状态变迁图。

【建立TCP连接】(三次握手)
   由于TCP协议提供可靠的连接服务,于是采用有保障的三次握手方式来创建一个TCP连接。三次握手的具体过程如下:
  1. 客户端发送一个带SYN标志的TCP报文(报文1)到服务器端,表示希望建立一个TCP连接。
  2. 服务器发送一个带ACK标志和SYN标志的TCP报文(报文2)给客户端,ACK用于对报文1的回应,SYN用于询问客户端是否准备好进行数据传输。
  3. 客户端发送一个带ACK标志的TCP报文(报文3),作为报文2的回应。
   至此,一个TCP连接就建立起来了。(详见下图)
 
 
【终止T[......]

Read more

STL sort原理及用法详解



排序的算法有很多种,在我们平时的编程中,我们很多时候会用的着排序,这些时候我们每次都要自己来实现吗?未必,C++标准模版库为我们提供了这样一个函数实现 sort(),用来满足我们日常对排序的需求。

标准模版库中sort函数包含在头文件 <algorithm> 中,std::sort()

 

  1. default (1)   
  2. template <class RandomAccessIterator>  
  3.   void sort (RandomAccessIterator [......]

Read more

C++ 复制构造函数

C++ primer

复制构造函数:

只有单个形参,而且该形参是对本类类型对象的引用(常为const修饰,只读),这样的构造函数称为 复制构造函数。与默认的构造函数一样,复制构造函数可由编译器隐式调用。

复制构造函数用于:

1、根据另一个同类型的对象显式 或 隐式 初始化一个对象;

2、复制一个对象,将它作为实参传递给一个函数;

3、从函数返回时复制一个对象

4、初始化顺序容器中的元素;

5、根据元素初始化式列表初始化数组元素;

 

构造函数隐式转换问题:

隐式转换是由  成员变量类型 转换为 类类型,应用场景如下:

[cpp][......]

Read more

ubuntu提示错误 : E: Sub-process /usr/bin/dpkg returned an error code

之前由于安装 php5-ldap 之后因为误删 /var/lib/dpkg/info 中的相关文件,造成每次使用 apt-get install 安装时都会提示错误,但不影响其他程序的正确安装。

查看每次报错,发现报错显示:

E: Sub-process /usr/bin/dpkg returned an error code (1)

对于这种问题的解决办法:

(1)、进入info目录:  cd /var/lib/dpkg/info 

(2)、查找并删除和报错相关的软件的信息,如提示 php5-ldap 错误, 可以使用 rm -f php5-ldap* 删除相关文件[......]

Read more

500 Error: Cannot find module ‘jade’错误的原因

500 Error: Cannot find module ‘jade’错误的原因。安装express之后访问http://localhost:3000。会出现500 Error: Cannot find module ‘jade’错误
解决方案:
确定package.json里有添加相应的jade依赖配置
使用npm install -d 可以自动配置package.json,并安装所有需要依赖的包

Read more

Windows7中怎么安装IIS服务器激活方法介绍

Windows7中怎么安装IIS服务器激活方法介绍。

第一:点击“开始”菜单->“控制面板”->点击打开->找到"程序"项。 点击开始菜单 进入控制面板页   
        第二:在打开的窗口中找到“程序和功能”中->点击“打开或关闭Windows功能”。  用户在点击进入“打开或关闭Windows功能”后,系统会加载Windows功能列表。比如Internet信息服务、NFS服务、Telnet服务器和Telnet客户端都是在这里体现。 系统自动加载Windows功能列表   
       第三:我们只需选中“Internet信息服务”选项,然后点击确定即可[......]

Read more

url参数与表单参数一致时怎么获取表单参数

url参数与表单参数一致时怎么获取表单参数。request.getParameter方法获取请求参数,根据http协议优先获取url中参数的值,那么url参数与表单参数一致时如何获取表单参数?

——解决思路———————-
引用:
request.getParameter方法获取请求参数,根据http协议优先获取url中参数的值,那么url参数与表单参数一致时如何获取表单参数?
同名参数 servlet中获取方法:

String[] arr = getParameterValues(“uname”); 返回一个字符串数组

不管是 ur[......]

Read more

c3p0连接池满后的连接死锁有关问题

c3p0连接池满后的连接死锁有关问题。

多线程编程测试条件下:如果c3p0连接池设置过小。当连接池满时。由于没有对各个线程设置优先级。导致后面的线程一直等待连接。造成死锁。
求简洁有效的解决方法。推荐可以解决上面问题的连接池也可以。

jdbc.initialPoolSize=5
jdbc.minPoolSize=3
jdbc.maxPoolSize=10
jdbc.maxIdleTime=600
jdbc.acquireIncrement=2
jdbc.idleConnectionTestPeriod=120
jdbc.maxConnectionAge=400

cl[......]

Read more

webspere6.1.0.17+struts2+spring+hibernate,公布应用程序,报Error 404: SRVE0190E: 找不到文件

webspere6.1.0.17+struts2+spring+hibernate,公布应用程序,报Error 404: SRVE0190E: 找不到文件。我用webspere6.1.0.17+struts2+spring+hibernate发布应用程序,服务器正常启动,访问jsp页

面可以,当使用struts2命名的路径 如:testWeb_test.action时 ,则报404错误。该应用程序在tomcat

发布能正常访问,在网上搜索到解决方案说在控制台-》应用程序服务器-》server1-》web容器-》定制属

性,增加 com.ibm.ws.webcontainer.[......]

Read more

jsp传值中文乱码的有关问题

jsp传值中文乱码的有关问题。

我有个JSP页面,要把一个页面上的中文值传回到本页面接收,可接收到的值是乱码
A页面
设置
<%@ page language=”java” contentType=”text/html; charset=utf-8″ pageEncoding=”utf-8″%>

<form id=”form1″ method=”post” >
<td width=”6%” align=”center” valign=”middle”>销售区域</td>
<td width=”12%” align=”cen[......]

Read more