<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wangyangkobe的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/wangyangkobe</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wangyangkobe]]></copyright><item><title><![CDATA[移动UIView的方法]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/19046369</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/19046369</guid><author>wangyangkobe</author><pubDate>Mon, 10 Feb 2014 19:30:17 +0800</pubDate><description><![CDATA[方法1：
- (void) moveAlert: (UIAlertView *) alertView
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    NSLog(@"%@", context);
        [UIView beginAnimations:nil context:context];
      ]]></description><category></category></item><item><title><![CDATA[UIPageControl  和 UISrollView 使用]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/19014089</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/19014089</guid><author>wangyangkobe</author><pubDate>Sun, 09 Feb 2014 19:09:35 +0800</pubDate><description><![CDATA[UIScrollView的判断位置的属性如下：




contentSize：CGSize类型，scrollview可以滑动的区域，例如，一个view的frame为（0，0，320，480），而scrollview的contentSize为（320，1080），则表示scrollView的垂直滑动区域为整个屏幕的3倍。
contentView：scrollview的内容显示区域，一般]]></description><category></category></item><item><title><![CDATA[关于awakeFromNib的学习]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/18996227</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/18996227</guid><author>wangyangkobe</author><pubDate>Sat, 08 Feb 2014 22:49:47 +0800</pubDate><description><![CDATA[When a nib is loaded, the nib loader allocates and initializes all objects, then hooks up all of their outlets and actions. Because of the order in which this happens, you cannot access outlets in you]]></description><category></category></item><item><title><![CDATA[C++11 并发教程——Part2：保护共享数据]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/13362729</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/13362729</guid><author>wangyangkobe</author><pubDate>Mon, 28 Oct 2013 22:47:11 +0800</pubDate><description><![CDATA[在前面一篇文章，我们知道怎么使用线程并行地执行程序。在每个线程中执行的代码都是独立的。通常情况下，多个线程之间会用到共享数据。此时，我们就会面临一个问题：同步。


通过下面一段简单的代码来分析同步问题。
同步问题
下面这个例子，我们探讨一个简单的计数器类。这个类有一个数据成员value和成员函数（增加数据成员value）。

class Counter
{
public:
	voi]]></description><category></category></item><item><title><![CDATA[erlang中socket知识点]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/9124427</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/9124427</guid><author>wangyangkobe</author><pubDate>Tue, 18 Jun 2013 22:17:20 +0800</pubDate><description><![CDATA[Erlang Socket


a. 最核心的概念 － socket控制进程

b. 基本的C/S结构的例子（服务器只能处理一个客户端连接）
c. 顺序型服务器的例子（服务器顺序的处理客户端的请求，每次只能处理一个，处理完一个处
      理下一个）
d. 并发型服务器的例子（服务器并发的处理多个客户端的请求）

e. 控制逻辑 － 主动型消息接收（非阻塞）
f. 控制逻辑 － 被动型消息接收（]]></description><category></category></item><item><title><![CDATA[使用callback实现自定义的erlang行为模式]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/9004979</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/9004979</guid><author>wangyangkobe</author><pubDate>Sat, 01 Jun 2013 19:07:58 +0800</pubDate><description><![CDATA[之前erlang中自定义行为模式，需要导出behaviour_info函数，比如： 



-module(gen_foo).
-export([behaviour_info/1]).

behaviour_info(callbacks) ->
    [{foo, 0}, {bar, 1}, {baz, 2}];
behavior_info(_) ->
    undefined.]]></description><category></category></item><item><title><![CDATA[Erlang如何查看gen_server内部的状态]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8989211</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8989211</guid><author>wangyangkobe</author><pubDate>Wed, 29 May 2013 14:22:18 +0800</pubDate><description><![CDATA[方法1、自写个函数，想gen_server发查看的消息。
方法2、利用系统现有的架构。sasl应用带了一个si的东西 全名是status inspector, 这个东西就是设计来帮用户解决这个问题的。
%%%-------------------------------------------------------------------
%%% @author flybird 
%%% @]]></description><category></category></item><item><title><![CDATA[Erlang中ets模块中的fun2ms/1。]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8980637</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8980637</guid><author>wangyangkobe</author><pubDate>Mon, 27 May 2013 16:49:14 +0800</pubDate><description><![CDATA[问题来源:
http://stackoverflow.com/questions/16660955/mnesia-check-for-a-value-in-either-of-the-keys-in-the-table/16769468#16769468

关于此函数的分析：
http://blog.yufeng.info/archives/482#more-482



自己的代]]></description><category></category></item><item><title><![CDATA[Erlang代码性能分析]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8973704</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8973704</guid><author>wangyangkobe</author><pubDate>Sat, 25 May 2013 17:12:29 +0800</pubDate><description><![CDATA[0、内置函数和运算符的性能
1)、++运算符
不要放任列表自右侧增长！此外还应该注意++运算符只是lists:append/2的一个别名，这个问题对该函数同样适用。
2）、- -运算符
- -运算符是lists:substract/2 的别名。这个运算符不常用：它的作用是从左侧列表中删除右侧列表中的元素。
如果元素顺序不是很重要，那么更为高效的方法是先排序，再调用ordersets:su]]></description><category></category></item><item><title><![CDATA[关于gen_tcp:controlling_process函数的使用]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8911228</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8911228</guid><author>wangyangkobe</author><pubDate>Fri, 10 May 2013 15:53:55 +0800</pubDate><description><![CDATA[网上的文档：
http://blog.youkuaiyun.com/skyman_2001/article/details/6582938
http://erlang-china.org/misc/using-gen_tcp-controlling_process.html


对于该函数的理解：
最初紧紧知道该函数是将一个Socket和一个进程的Pid绑定在一起，但是对于“发送给这个Socket]]></description><category></category></item><item><title><![CDATA[Erlang练习：洗牌算法——将一个序列打乱，类似于Python里面的shuffle函数。]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8758779</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8758779</guid><author>wangyangkobe</author><pubDate>Thu, 04 Apr 2013 13:36:30 +0800</pubDate><description><![CDATA[问题的来源：
问题描述：假设有一个数组，包含n个元素。现在要重新排列这些元素，要求每个元素被放到任何一个位置的概率都相等（即1/n），并且直接在数组上重排（in place），不要生成新的数组。用 O(n) 时间、O(1) 辅助空间。


算法的证明：

来计算一下概率。如果某个元素被放入第i（1≤i≤n）个位置，就必须是在前
 i - 1 次选取中都没有选到它，并且第 i 次选取是]]></description><category></category></item><item><title><![CDATA[Erlang练习：建立文本索引]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8758673</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8758673</guid><author>wangyangkobe</author><pubDate>Thu, 04 Apr 2013 12:13:45 +0800</pubDate><description><![CDATA[为文本建立索引是文本信息处理的一个重要的任务，给定一个由英文单词构成的文件，为文件中所有单词建立索引，记录每个单词出现的行号和每行出现的次数，并将索引存入一个文件。

-module(text_index).

-compile(export_all).
-import(re, [run/2,replace/4]).

-record(data, {word, line = []}).

-d]]></description><category></category></item><item><title><![CDATA[Python中的迭代器]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712198</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712198</guid><author>wangyangkobe</author><pubDate>Sun, 24 Mar 2013 11:36:51 +0800</pubDate><description><![CDATA[特殊方法： __iter__，这个方法是迭代器规则的基础。


如果要对对象进行迭代：实现__iter__方法的对象。


__iter__方法返回一个迭代器（iterator），所谓的迭代器就是具有next 方法（这个方法在调用的时候不需要任何参数）的对象。在调用next方法的时候，迭代器会返回它的下一个值。如果next方法被调用，但迭代器没有值可以返回，就会引发一个StopIter]]></description><category></category></item><item><title><![CDATA[Python3 抓取网页中的图片]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712121</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712121</guid><author>wangyangkobe</author><pubDate>Sun, 24 Mar 2013 10:53:41 +0800</pubDate><description><![CDATA[import urllib.request
import socket
import re
import sys
import os
targetDir = r"C:\Users\elqstux\Desktop\pic"
def destFile(path):
    if not os.path.isdir(targetDir):
        os.mkdir(targetDir)]]></description><category></category></item><item><title><![CDATA[Python中的html.parser]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712076</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8712076</guid><author>wangyangkobe</author><pubDate>Sun, 24 Mar 2013 10:47:57 +0800</pubDate><description><![CDATA[class WebPageParser(html.parser.HTMLParser):
    def __init__(self, strict = False):
        super().__init__(strict)
        self.urls = []
        self.data = []
        self.is_href = False;
    de]]></description><category></category></item><item><title><![CDATA[A small module that jumps between connected node]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8557937</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8557937</guid><author>wangyangkobe</author><pubDate>Wed, 30 Jan 2013 23:04:43 +0800</pubDate><description><![CDATA[-module(virus).
-export([start/0]).
-export([start/1]).
 
start()     -> spawn_process(code:get_object_code(?MODULE)).
start(Beam) -> spawn_process(Beam).
 
spawn_process(Beam) ->
    case whereis(?MO]]></description><category></category></item><item><title><![CDATA[使用Bash 编写的 TCP 端口扫描器]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8546367</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8546367</guid><author>wangyangkobe</author><pubDate>Sun, 27 Jan 2013 14:49:08 +0800</pubDate><description><![CDATA[http://www.oschina.net/translate/tcp-port-scanner-in-bash
#!/bin/bash

alarm()
{
	perl -e '
		eval {
			$SIG{ALRM} = sub{die};
			alarm shift;
			system(@ARGV);
		};
		if ($@) { exit 1 }
		' "$@";
}]]></description><category></category></item><item><title><![CDATA[Linux下grep命令的详解，cut，sed]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8531654</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8531654</guid><author>wangyangkobe</author><pubDate>Tue, 22 Jan 2013 22:40:16 +0800</pubDate><description><![CDATA[1、grep能够接受正则表达式和通配符。
grep match_pattern filename
一个grep命令可以对多个文件进行搜索：grep "match_object" file1 file2 file3
用 - - color 选项可以在输出行中重点标记出匹配到的单词：grep word file - -color=auto
grep 通常将match_pattern视为通配符。]]></description><category></category></item><item><title><![CDATA[shell中的命令替换]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8498218</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8498218</guid><author>wangyangkobe</author><pubDate>Sun, 13 Jan 2013 15:34:08 +0800</pubDate><description><![CDATA[Bash引号的那点事

http://www.igigo.net/archives/category/bash%E9%82%A3%E7%82%B9%E4%BA%8B/page/2、


filelist=`ls -al`
echo $filelist

# put contents of the file into a varible
filecontent=`cat export.tx]]></description><category></category></item><item><title><![CDATA[shell练习]]></title><link>https://blog.youkuaiyun.com/wangyangkobe/article/details/8493736</link><guid>https://blog.youkuaiyun.com/wangyangkobe/article/details/8493736</guid><author>wangyangkobe</author><pubDate>Fri, 11 Jan 2013 14:58:01 +0800</pubDate><description><![CDATA[让使用者输入一个数字，程序可以由 1+2+3... 一直累加到使用者输入的数字为止。
#calcute the sum 1+2+....+n.
read -p "Please input a number: " n
sum=0
for(( i=1; i<=$n; i++))
do
    sum=$((sum+i))
done
echo "1+2+..+$n = $sum"

撰写一支程序，他]]></description><category></category></item></channel></rss>