I/O多路复用 select poll
等待队列
select内核实现探究
poll内核实现探究
分类:
其他好文 时间:
2014-08-13 00:28:54
阅读次数:
275
一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在java里边就是拿到某个同步对象的锁(一个对象只有一把锁);如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池等待队列中)。取到锁后,他就开始执行同步代码(被synchronized...
分类:
编程语言 时间:
2014-08-05 00:00:48
阅读次数:
448
1. 开发了一个简单的监视weblogic运行情况的小程序,各位朋友下载下来试试,不用登陆console就可以知道server的运行状况,包括了jvm、线程、jdbc、状态jms等;还有一个更简单的选项,下拉选“warning”,直接查看是否有等待队列、jvm紧张阿、连接池泄漏阿、连接池等待阿;
2. 已经上传 weblogic_monitor.jar ,jar包里面有readme...
分类:
Web程序 时间:
2014-07-24 10:44:33
阅读次数:
324
pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t*mutex)函数
传入的参数mutex用于保护条件,因为我们在调用pthread_cond_wait时,如果条件不成立我们就进入阻塞,但是进入阻塞这个期间,如果条件变量改变了的话,那我们就漏掉了这个条件。因为这个线程还没有放到等待队列上,所以调用pthread_cond_wait前要先...
分类:
编程语言 时间:
2014-07-17 20:24:12
阅读次数:
236
原文:SQL Server中一个隐性的IO性能杀手-Forwarded record简介 最近在一个客户那里注意到一个计数器很高(Forwarded Records/Sec),伴随着间歇性的磁盘等待队列的波动。本篇文章分享什么是forwarded record,并从原理上谈一谈为什么Forwarde...
分类:
数据库 时间:
2014-07-08 21:58:52
阅读次数:
272
Re'entrantLock lock = new ReentrantLock(fair);
Condition
notEmpty = lock.newCondition(); //返回内部类 AbstractQueuedSyncronizer.ConditionObject
各自维护了两个队列.一个是阻塞同步队列 syncQueue 双向队列,一个是条件等待队列....
分类:
数据库 时间:
2014-06-27 09:10:37
阅读次数:
505
Java线程的join方法可用于暂停当前线程的执行直至目标线程死亡。Thread中一共有三个join的重载方法。
public final void join():该方法将当前线程放入等待队列中,直至被它调用的线程死亡为止。如果该线程被中断,则会抛出InterruptedException异常。
public final synchronized void join(long...
分类:
编程语言 时间:
2014-06-05 03:41:18
阅读次数:
243
0.等待队列
在Linux内核中等待队列有很多用途,可用于中断处理、进程同步及定时。我们在这里只说,进程经常必须等待某些事件的发生。等待队列实现了在事件上的条件等待: 希望等待特定事件的进程把自己放进合适的等待队列,并放弃控制全。因此,等待队列表示一组睡眠的进程,当某一条件为真时,由内核唤醒它们。
等待队列由循环链表实现,由等待队列头(wait_queue_head_t)和等待队列...
分类:
其他好文 时间:
2014-05-13 16:03:28
阅读次数:
370
最近看epoll 和 select
都涉及到一个东西叫做设备等待队列,等待队列是如何工作的,内核是怎么管理的?看这篇文章问题:进程是如何组织起来的?我们知道,进程是有很多种状态的:include/linux/sched.h#define
TASK_RUNNING 0#define TASK_INT....
分类:
系统相关 时间:
2014-05-11 23:08:52
阅读次数:
537
1、linux下等待队列的基本概念
在内核里面,等待队列是有很多用处的,尤其是在中断处理、进程同步、定时等场合。可以使用等待队列在实现阻塞进程的唤醒。它以队列为基础数据结构,与进程调度机制紧密结合,能够用于实现内核中的异步事件通知机制,同步对系统资源的访问等。...
分类:
其他好文 时间:
2014-05-06 21:00:04
阅读次数:
636