https://www.zhihu.com/question/27621722 http://www.cnblogs.com/wawlian/archive/2012/06/18/2553061.html http://blog.csdn.net/yueguanghaidao/article/details/10416867