http://my.oschina.net/shede333/blog/359290#OSC_h3_3 文章讲得挺详细
转:https://www.cnblogs.com/shiguangji728/p/4981526.html