<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[oliveevilo的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/oliveevilo</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; oliveevilo]]></copyright><item><title><![CDATA[#pragma pack笔记]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/42965059</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/42965059</guid><author>oliveevilo</author><pubDate>Wed, 21 Jan 2015 10:43:39 +0800</pubDate><description><![CDATA[申明：内容来自stackoverflow，仅为方便自己以后忘记了再看时方便而转，https://www.google.com.hk/url?sa=t&rct=j&q=&esrc=s&source=web&cd=7&ved=0CEUQFjAG&url=%68%74%74%70%3a%2f%2f%73%74%61%63%6b%6f%76%65%72%66%6c%6f%77%2e%63%6f%6d%2f]]></description><category></category></item><item><title><![CDATA[Source Insight技巧：头文件和实现文件快捷键打开的方式--.h .cpp]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/42916449</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/42916449</guid><author>oliveevilo</author><pubDate>Tue, 20 Jan 2015 12:57:00 +0800</pubDate><description><![CDATA[申明：本文转载纯粹只为方便自己以后需要的时候可以很容易找到，转载请注明出处
转自：http://blog.chinaunix.net/uid-27213819-id-3810619.html


source insight并没有提供这样的快捷键，有时候用着比较烦人。终于找到了方法：使用宏命令，并设置快捷键与之绑定。

1、打开source insight，Project -> Ope]]></description><category></category></item><item><title><![CDATA[simple skiplist  implementation in c]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/42671957</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/42671957</guid><author>oliveevilo</author><pubDate>Tue, 13 Jan 2015 09:00:44 +0800</pubDate><description><![CDATA[#ifndef MY_SKIP_LIST
#define MY_SKIP_LIST

#include 
#include 
#include 

typedef int DataType;

#define MAX_LEVEL 8

struct DataNode;


typedef struct NodeLevel
{
    struct DataNode * forward;
    u]]></description><category></category></item><item><title><![CDATA[sublime C++开发环境配置]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/39252863</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/39252863</guid><author>oliveevilo</author><pubDate>Sat, 13 Sep 2014 16:45:47 +0800</pubDate><description><![CDATA[zhuanzi
http://blog.youkuaiyun.com/ilovedatastructure/article/details/10473823
Sublime Text 是一款卓越的代码编辑器，具有强大的文件与函数查找功能，能够同时进行多行代码选择与编辑，可随心所欲的定制各种插件，支持跨平台使用。

一、Windows平台配置Sublime Text 3 C++开发环境：
1. 安装S]]></description><category></category></item><item><title><![CDATA[使用shell输出彩色日志简单实现]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/38585963</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/38585963</guid><author>oliveevilo</author><pubDate>Fri, 15 Aug 2014 15:36:36 +0800</pubDate><description><![CDATA[color-log.sh
log="this is a log string"

BOLD="01"             #加粗
UNDERLINE="04"        #下划线
BLINK="05"            #闪烁

#foreground color
FG_GREY="30"             #灰色  
FG_RED="31"
FG_GREEN="32"
FG_]]></description><category></category></item><item><title><![CDATA[How Virtual Table works in C++]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/27802339</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/27802339</guid><author>oliveevilo</author><pubDate>Sat, 31 May 2014 11:11:06 +0800</pubDate><description><![CDATA[：http://www.learncpp.com/cpp-tutorial/125-the-virtual-table/]]></description><category></category></item><item><title><![CDATA[java 8 简明教程]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/21864991</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/21864991</guid><author>oliveevilo</author><pubDate>Sun, 23 Mar 2014 11:26:58 +0800</pubDate><description><![CDATA[“Java并没有没落，人们很快就会发现这一点”
欢迎阅读我编写的Java 8介绍。本教程将带领你一步一步地认识这门语言的新特性。通过简单明了的代码示例，你将会学习到如何使用默认接口方法，Lambda表达式，方法引用和重复注解。看完这篇教程后，你还将对最新推出的API有一定的了解，例如：流控制，函数式接口，map扩展和新的时间日期API等等。
允许在接口中有默认方法实现
Java 8 允许我们]]></description><category></category></item><item><title><![CDATA[linux定时任务at，batch和crontab]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/21299873</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/21299873</guid><author>oliveevilo</author><pubDate>Sat, 15 Mar 2014 22:47:21 +0800</pubDate><description><![CDATA[申明：本文仅是个人《Linux鸟哥私房菜》学习笔记，转载请引用原文链接和同样的申明

at：仅执行一次就结束调度，使用at需要atd支持，执行at任务最好使用绝对路径，at执行完后的输出会发送到用户邮箱，而不会显示在标准输出上
crontab：一直循环执行


at：
开启atd服务：(貌似需要root权限)

/etc/init.d/atd restart
chkconfig]]></description><category></category></item><item><title><![CDATA[《大型网站技术架构核心原理与案例分析》---摘要]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/19754615</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/19754615</guid><author>oliveevilo</author><pubDate>Sun, 23 Feb 2014 13:38:17 +0800</pubDate><description><![CDATA[申明：本文仅是对《大型网站技术架构核心原理与案例分析》的一点摘要，纯属个人阅读后加强记忆所用


1.大型网站架构演化
大型网站软件系统的特点：1）高并发，大流量 2）高可用 3）海量数据 4）用户分布广泛，网络情况复杂 5）安全环境恶劣 6）需求变更快，发布频繁 7）渐进式发展  
大型网站架构演化发展历程：
初始阶段网站用户量小，仅将网站部署在一台服务器上即可，也即应用服务器、文件]]></description><category></category></item><item><title><![CDATA[小记初学android过程中遇到的小问题（android 4.4）]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/18499509</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/18499509</guid><author>oliveevilo</author><pubDate>Sun, 19 Jan 2014 10:31:28 +0800</pubDate><description><![CDATA[在layout文件中有下面这样一个编辑框
	<EditText
	        android:id="@+id/pwd_edittext"
	        android:inputType="textPassword"
	        android:layout_height="wrap_content"
	        android:layout_width="wrap_con]]></description><category></category></item><item><title><![CDATA[android 设置id的三种方法的区别]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/18373913</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/18373913</guid><author>oliveevilo</author><pubDate>Thu, 16 Jan 2014 22:43:38 +0800</pubDate><description><![CDATA[在android应用开发过程中，对控件android:id属性的设置一直有些疑问，经过一番折腾，终于弄清楚了。android:id的设置，通常有三种方式，分别是以下这三种：

android:id="@+id/btn"

android:id="@android:id/tabhost"

android:id="@id/btn"

（1）android:id="@+id/btn" ]]></description><category></category></item><item><title><![CDATA[How to create a immutable class in java]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/18076697</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/18076697</guid><author>oliveevilo</author><pubDate>Fri, 10 Jan 2014 10:30:36 +0800</pubDate><description><![CDATA[转自：http://www.javapractices.com/topic/TopicAction.do?Id=29
Immutable objects are simply objects whose state (the object's data) cannot change after construction. Examples of immutable objects from]]></description><category></category></item><item><title><![CDATA[Java小笔记---Java ThreadLocal]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17718431</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17718431</guid><author>oliveevilo</author><pubDate>Tue, 31 Dec 2013 17:42:26 +0800</pubDate><description><![CDATA[ThreadLocal的作用这里就不多说了，网上资料很多，这里小计一下容易出错的一个地方，也就是上图注解中说的要注意的地方
先看一段代码：
直接使用jdk提供ThreadLocal：
	public static void main(String[] args) {
		
		final Secquence seq = new Secquence();
		
		Thread [] thre]]></description><category></category></item><item><title><![CDATA[java小笔记----awt 使用自定义字体]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17628123</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17628123</guid><author>oliveevilo</author><pubDate>Sat, 28 Dec 2013 09:40:49 +0800</pubDate><description><![CDATA[1，假设字体文件为 “宋体.ttf”
private static Font getSelfDefinedFont(String filename)
    {
        Font font = null;
        //字体文件在conf下面
        String filepath = RandomCodeChinese.class.getResource("/").get]]></description><category></category></item><item><title><![CDATA[Sunday algorithm]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17340809</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17340809</guid><author>oliveevilo</author><pubDate>Sun, 15 Dec 2013 23:36:35 +0800</pubDate><description><![CDATA[Idea
http://www.iti.fh-flensburg.de/lang/algorithmen/pattern/sundayen.htm

The Boyer-Moore-algorithm uses for its bad-character
 heuristics the text symbol that has caused a mismatch. The Horspool]]></description><category></category></item><item><title><![CDATA[Horspool algorithm]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17340799</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17340799</guid><author>oliveevilo</author><pubDate>Sun, 15 Dec 2013 23:35:37 +0800</pubDate><description><![CDATA[Idea
http://www.iti.fh-flensburg.de/lang/algorithmen/pattern/horsen.htm

The Boyer-Moore algorithm uses two heuristics in order to determine the
 shift distance of the pattern in case of a mismatc]]></description><category></category></item><item><title><![CDATA[Boyer-Moore algorithm]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17340743</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17340743</guid><author>oliveevilo</author><pubDate>Sun, 15 Dec 2013 23:34:29 +0800</pubDate><description><![CDATA[Idea
http://www.iti.fh-flensburg.de/lang/algorithmen/pattern/bmen.htm

The algorithm of Boyer and Moore [BM 77] compares
 the pattern with the text from right to left. If the text symbol that is c]]></description><category></category></item><item><title><![CDATA[Knuth-Morris-Pratt algorithm]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/17340639</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/17340639</guid><author>oliveevilo</author><pubDate>Sun, 15 Dec 2013 23:28:32 +0800</pubDate><description><![CDATA[Knuth-Morris-Pratt algorithm

   




Idea
After a shift of the pattern, the naive algorithm has forgotten all information about previously matched symbols. So it is possible that it re-compar]]></description><category></category></item><item><title><![CDATA[openfire connection manager tls 配置]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/10026791</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/10026791</guid><author>oliveevilo</author><pubDate>Sun, 18 Aug 2013 00:08:50 +0800</pubDate><description><![CDATA[最近项目（基于openfire）里需要用tls，为了方便以后的工作，这里简单做一下记录，不罗嗦直接进入正题。
说到tls，我们就要问问为什么需要tls，原因无非是保证客户端和服务器交互的安全性。我们使用tls最初只是为了加密通信通道，后来又需要增加一个tls证书认证，让保证客户端收到的连接一定是我们的服务器发出的，也就是防止域名劫持，说到域名劫持那么我们就得了解一下DNS协议，以及域名劫持是如何]]></description><category></category></item><item><title><![CDATA[go property snippet]]></title><link>https://blog.youkuaiyun.com/oliveevilo/article/details/9456707</link><guid>https://blog.youkuaiyun.com/oliveevilo/article/details/9456707</guid><author>oliveevilo</author><pubDate>Wed, 24 Jul 2013 23:34:05 +0800</pubDate><description><![CDATA[《the way to go》笔记
1：Import loads the public declaration from the compiled package,it dose not insert the source code
2：every piece of code is compiled only once
3：if the package name dose not start]]></description><category></category></item></channel></rss>