师毅的Blog

【https://blog.shiyicode.com】听说太理想的一切都不可接触,我却哪管千山走遍,亦要设法去捕捉......

Boost.Asio网络库之io_service分析

io_service概述几乎绝大多数用到Boost.Asio的代码里都会出现这样一个类:io_service。它应该算是Asio库里的核心类了,其本质是一个任务队列,但又不仅仅是个任务队列。基本结构io_service是个接口类(ps:这里解释一下,这里说接口类并不是指类似java的interfa...

2016-12-24 02:44:14

阅读数 1022

评论数 0

IDEA tomcat三步实现热部署

每次切换桌面<比如切换到浏览器>都会更新类和资源),这样我们在更改jsp文件后,只需切换到浏览器,自动就会进行更新了,感觉很爽 上面本人已通过对springMVC控制层进行更改及jsp更改尝试,亲测可行,至于spring的配置更改等等是否有效,还没有尝试,不敢妄言。

2016-12-18 02:19:22

阅读数 22279

评论数 8

SpringMVC基于注解进行URL映射

前言 自己之前写了好几个web程序,都遵从这样的方式:地址栏输入的url,后台一定存在对应的servlet。 然而某天看着自己博客地址,链接由域名和自己用户名(如上图所示),就忍不住开始想了,csdn那么多用户,总不可能有那么多servlet吧。 一定是进行了某种映射,于是去查了些资料,知道...

2016-12-15 03:23:05

阅读数 1108

评论数 0

SpringMVC返回json数据(@ResponseBody注解的使用)

最近开始了一个web项目,深深感觉到web方面知识的混杂,越来越明白java为什么可以流行这么多年了,库啊,框架啊,一抓一大把,要多方便有多方便,开发效率提升太高了。 最初使用SpringMVC时,为其ModelAndView可以直接返回页面和数据感觉爽到不行,但是当只想返回数据而不返回页面时,该...

2016-12-15 02:22:26

阅读数 24343

评论数 1

boost:asio信号量signal_set源码分析及使用

首先我们先看signal_set.hpp,可以看到下面代码#include <boost/asio/detail/config.hpp> #include <boost/asio/basic_signal_set.hpp>namespace boost { namespac...

2016-12-11 18:02:59

阅读数 2734

评论数 0

shared_ptr智能指针模板类的简单实现(c++11)

前言 最近突然萌生把stl常用的库都通通自己过一遍的想法,算是对泛型编程的一次学习,也深入理解stl,还是对c++11知识的练习,就从智能指针开始吧。 另外,c++11让c++程序变得简洁优雅了许多,对这门语言有点爱不释手了。 智能指针原理 通过使用引用计数的方式来自动的对动态申请的...

2016-12-11 04:51:52

阅读数 4066

评论数 4

boost:asio网络库初学之echo服务器客户端实现

为什么想起来学网络库呢前一阵在网上看到这么一段话 select 实在是太慢了. 在这种背景下, IBM 老大哥带领着MS老弟先搞了 IOCP . 然而开源的人有开源的做法, 在 NIH 综合症的影响下, BSD 的人敢为天下所不齿, 发明了 Kqueue. 同样在 NIH 综合症影响...

2016-12-10 18:58:59

阅读数 2447

评论数 0

Mac Boost安装及使用(命令行和Xcode)

安装 下载boost安装包 官网下载地址 https://sourceforge.net/projects/boost/files/boost/1.62.0/ 2.解压并进入boost_1_62_0文件夹 3.执行boostrap.sh ./boostrap.sh 4.上一步执行成功...

2016-12-10 02:14:05

阅读数 5923

评论数 0

8086汇编初学之贪吃蛇

前言一直没想过要去学习汇编,觉得需要用汇编的场合无非三种: 1. 与硬件结合很紧密高级语言做不到 2. 时空效率要求甚高算法层面已不能优化到 3. 逆向破解等只能用某些途径看其汇编指令 其余情况下,用汇编无异于有炮不用偏用鸟枪。 本来准备等自己需求以上场合时再去学,但因为学校举办的...

2016-12-08 04:35:55

阅读数 6100

评论数 8

linux服务器开发之网关服务器的实现

什么是网关服务器 初学linux服务器开发时,我们的服务器是很简单的,只需要一个程序完成与客户端的连接,接收客户端数据,数据处理,向客户端发送数据。 但是在处理量很大的情况下,一台机器不能满足我们的需求,此时我们应该怎么办。 我们可以将服务端的任务分摊到多台机器上完成,见下图 ...

2016-12-05 21:50:10

阅读数 5959

评论数 2

Epoll-ET模式读写之用户连接的封装

前言 服务端而言,对于每一个新的连接我们都需要去保存其基本信息,如ip地址,套接字fd,也需要赋予其唯一标识如用户名。 这里,我们来谈谈对用户连接的封装。 用户连接需要哪些数据1. 套接字描述符 sockfd 执行读写操作时当然不可缺 2. ...

2016-12-03 16:36:16

阅读数 457

评论数 0

Epoll-ET模式下非阻塞读写之Buffer的封装

先说说Epoll的ET模式 epoll默认的模式是LT,要说ET不得不提到LT,LT与ET的区别可以用一句话概括: LT模式下只要socket处于可读状态(添加EPOLLIN事件时)或可写状态(添加EPOLLOUT事件时),就会一直返回其socket。 ET模式下在第一次返回soc...

2016-12-03 03:44:34

阅读数 1160

评论数 0

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