class Num
{
private int num;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public Num(int num)
{
this.num=num;
}
}
class myThreadA ext...
分类:
编程语言 时间:
2014-10-25 17:25:27
阅读次数:
217
signal(SIGCHLD, SIG_IGN)和signal(SIGPIPE, SIG_IGN);signal(SIGCHLD, SIG_IGN);因为并发服务器常常fork很多子进程,子进程终结之后需要服务器进程去wait清理资源。如果将此信号的处理方式设为忽略,可让内核把僵尸子进程转交给in....
分类:
其他好文 时间:
2014-10-24 18:24:50
阅读次数:
176
在TCP连接中,我们会遇到端口复用、粘包问题等。当server端主动关闭socket,会产生一个TIME_WAIT的状态,所以我们需要加上端口复用的选项,来解决该问题。由于TCP是个流协议,所以无法提供报文服务,这就需要去处理粘包问题,解决方法有: 1) 采用固定长度发送数据,这样做的话局限性比较....
分类:
系统相关 时间:
2014-10-23 19:02:48
阅读次数:
244
先介绍一个非常基础的函数:try_to_wake_up()此函数的作用是:从等待队列中唤醒一个进程,让后将其放到就绪队列中。staticinttry_to_wake_up(structtask_struct*p,intstate,intwake_flags)参数的含义:p:表示的是将要被唤醒的进程;state:可以被唤醒的进程的状态掩码;wake_flag..
分类:
其他好文 时间:
2014-10-23 06:58:36
阅读次数:
253
在对当前的运行的进程进行阻塞时经常会用到wait_event()这个函数,来看看linux内核中时如何实现wait_event()这个函数的。先介绍几个宏定义函数:1.#defineDEFINE_WAIT_FUNC(name,function)\wait_queue_tname={\.private=current,\.func=function,\.task_list=LIST_HEAD_INIT((n..
分类:
其他好文 时间:
2014-10-23 06:55:07
阅读次数:
222
唤醒等待队列中的等待进程的函数wake_up()函数的核心实现函数是__wake_up_common()函数。__wake_up_common(wait_queue_head_t*q,intmode,intnr_exclusive,intwake_flags,void*key)参数介绍:q:是等待队列头;mode:是进程的状态模式其取值为:TASK_INTERRUPTIBLE,TASK_UNITERRUP..
分类:
其他好文 时间:
2014-10-23 06:51:54
阅读次数:
579
============问题描述============ android开发2048时候屏幕过度敏感,在屏幕滑动的时候手势敏感,轻轻滑动一次就会移动好几次触发,在里面加入thread.wait(1000)也没有用,只是时间延长了 ...
分类:
移动开发 时间:
2014-10-22 23:27:53
阅读次数:
280
man wait:NAME wait, waitpid, waitid - wait for process to change stateSYNOPSIS #include #include pid_t wait(int *status); ...
分类:
其他好文 时间:
2014-10-22 14:27:48
阅读次数:
232
前些日子接到了一个面试电话,面试内容我印象很深,如何模拟一个并发?当时我的回答虽然也可以算是正确的,但自己感觉缺乏实际可以操作的细节,只有一个大概的描述。
当时我的回答是:“线程全部在同一节点wait,然后在某个节点notifyAll。”
面试官:“那你听说过惊群效应吗?”
我:“我没有听过这个名词,但我知道瞬间唤醒所有的线程,会让CPU负载瞬间加大。”
...
分类:
编程语言 时间:
2014-10-21 19:45:12
阅读次数:
247
一. 线程通信:
在同步方法中,线程之间的通信主要依靠以下三个方法来实现:
1. wait() 调用该方法会使当前线程暂停执行并释放对象锁,让其他线程可以进入Synchronized代码块,当前线程放入对象等待池中。
2. notify() 调用该方法会从对象等待池中移走任意一个线程
3. notifyAll() 调用该方法会从对象等待池中移走所有等待的线程。...
分类:
编程语言 时间:
2014-10-20 23:24:35
阅读次数:
254