发布时间:2012-12-24 10:41:51
$ dateTue Feb 3 11:29:00 CST 2009--把时间转成秒数$ date +%s1233631748--把秒数转换成标准时间格式(方法1)$ date -d '1970-1-1 0:0:0 GMT + 1233631748 seconds'Tue Feb 3 11:29:08 CST 2009--把秒数转换成标准时间格式(方法2)$ date -d @1233631748Tue Feb 3 11:29:08 CST 2009建议使用别名简化并转换成我们熟悉的时间格式,如:$ alias d='date +"%F %T"'$ alias dd='date +"%F %T"......【阅读全文】
发布时间:2012-12-24 10:40:19
之前有个小项目,具体需求是:完成一个客户端,按照某一速度向服务器发送Radius请求,并处理服务器返回的响应.实现方案:采用多线程方式实现,每个线程负责发送请求,并等待服务器返回的响应. 测试发现,发送速度达到某个值时就无法增加了,日志显示内存不够,无法创建更多线程. 进而发现可以创建不到400个线程. 实际上,这里的内存不足是指虚拟内存不足(这个项目里每个线程需要的物理内存很小),对于32位系统,虚拟内存空间大约4G, 其中低3G内存空间分配给用户空间(windows通常分配2G空间给用户空间)此外,进程每创建一个线程,会分配固定大小的虚拟空间作为线程的栈空间(通常是8M......【阅读全文】
发布时间:2012-12-20 16:31:44
Call a subroutine and pass a variable by value $value = "foo"; $newvalue = add_bar($value); print "$value becomes $newvalue"; sub add_bar { my ($copy) = @_; $copy .= "bar"; return $copy; } RESULT: foo becomes foobarDISCUSSION: In any Perl subroutine the special @_ array will always c......【阅读全文】
发布时间:2012-12-20 16:31:40
perl中函数参数的传递接收: 函数语法: Sub subroutineName{ my (@argsTosubroutine) = @_; # 参数通过这种方式传递给函数 &doStuff; # 执行体 return ( @returnValue ); # } 特殊数组变量 @_ 是参数栈,它对于被调用的子程序来说是本地数据。每次调用子程序时就把参数放入到 @_ 中。@_ 的工作方式非常象c和c++ 中的栈。因为参数栈是一个数组,所以传递给函数的参数的数量没有限制。而没个参数都是一个标量。当调用子程序时候,参数栈的长度是无关紧要的。无论把什么 参数传递给读者的子程序,perl 都将负......【阅读全文】