标题:一些trick/小知识点的记录 出处:Felix021 时间:Fri, 26 Mar 2010 00:53:50 +0000 作者:felix021 地址:https://www.felix021.com/blog/read.php?1871 内容: php用fsockopen打开的fp是行缓冲的, 想要数据立即发送到服务器, 就在每次fwrite的数据后面加一个\n。 php的fwrite是atomic的。 java的wait()和notify()是任何对象(基本数据类型不行)都可以用的, 因为每个对象都有一个锁。在针对对象x的时候, 必须处于synchronized(x){}代码段内使用,否则会抛出一个 IllegalMonitorStateException: Thrown to indicate that a thread has attempted to wait on an object's monitor or to notify other threads waiting on an object's monitor without owning the specified monitor. java的finalize不是析构函数, 只有gc运行起来的时候才可能会调用到它, 而且还不能继承。不能完全依赖它来作一些对象结束时本该作的事情。比较靠谱但是又比较丑陋的是用try-catch-finally来完成。 在linux下如果先chroot再getpwnam失败, 很可能是因为chroot以后就找不到/etc/passwd了。TODO chroot以后无法调用可执行程序的问题还需要再了解一下原因。 WIFEXITED/WIFSIGNALED等宏的详细说明在man 2 wait里面。 ptrace捕获到的每个syscall大部分都有进和出2次;除了execve, 只有一次。 用这个命令来计算代码行数。@3-25目前的结果是4741行。引用 find -regex ".*\.\(java\|cpp\|c\|h\|sh\|css\|js\|php\)" -exec wc -l {} \; | awk '{sum+=$1}END{print sum}' Generated by Bo-blog 2.1.0