http://ju.outofmemory.cn/entry/1423 http://developer.51cto.com/art/201206/340607.htm https://www.cnblogs.com/inteliot/archive/2012/06/03/2533058.html