初次体验ManualResetEvent和AutoResetEvent主要负责多线程编程中的线程同步;以下一段是引述网上和MSDN的解析:在.Net多线程编程中,AutoResetEvent和ManualResetEvent这两个类经常用到, 他们的用法很类似,但也有区别。Set方法将信号置为发送状...
分类:
编程语言 时间:
2014-07-31 02:25:35
阅读次数:
269
通过使用一个计数器对共享资源进行访问控制,Semaphore构造器需要提供初始化的计数器(信号量)大小以及最大的计数器大小访问共享资源时,程序首先申请一个向Semaphore申请一个许可证,Semaphore的许可证计数器相应的减一,当计数器为0时,其他申请该信号量许可证的线程将被堵赛,直到先前已经...
分类:
编程语言 时间:
2014-07-31 02:22:05
阅读次数:
333
1.迭代服务器模型 1.1 迭代服务器是处理多个请求时一种最简单直接的思路,即使用while循环,它不具有并发能力,即必须一个一个的处理客户的请求。 1.2 程序示例。#include "def.h"int listenfd_init(); //返回一个处于监听状态的套接字描述符void do...
分类:
编程语言 时间:
2014-07-31 02:18:25
阅读次数:
365
简介
NIO的作用就是改进程序的性能。因为有时候程序的性能瓶颈不再是CPU,而是IO。这时候NIO就派上用场了。NIO的原理就是尽量利用系统底层的资源来提高效率,比如利用DMA硬件减小CPU负荷,利用操作系统的epoll机制避免线程频繁切换。通过底层资源提高系统的吞吐量。
缓冲区
缓冲区就是一个固定大小的一组数据。缓冲区有四个非常重要的属性:容量,限制,位置,标记。容量就是一个缓冲区...
分类:
编程语言 时间:
2014-07-31 00:07:35
阅读次数:
388
规则1 指定线程名 用于查看线程信息规则2使用Thread对象的setUncaughtExceptionHandler方法注册Runtime异常的处理者(v1.5+)说明:Java多线程程序中,所有线程都不允许抛出未捕获的checked exception,也就是说各个线程需要自己把自己的check...
分类:
编程语言 时间:
2014-07-30 23:26:05
阅读次数:
384
[seriesposts sid=500] 下面的代码讲述了一个故事 一个面包生产铺里目前有30个面包,有三个人来买面包,第一个人要买50个,第二个要买20个,第三个要买30个。 第一个人不够,所以等着,让第二个买了。面包铺继续生产面包。有7个人在生产。 package com.javaer.thr...
分类:
编程语言 时间:
2014-07-30 23:20:25
阅读次数:
259
StringBuffer 始于 JDK 1.0
StringBuilder 始于 JDK 1.5
StringBuffer 与 StringBuilder中的方法和功能完全是等价的,只是
StringBuffer 中的方法大都采用了 synchronized 关键字进行修饰,因
此是线程安全的,而 StringBuilder 没有这个修饰,可以被认为是线程
不安全的。
从 JDK 1....
分类:
其他好文 时间:
2014-07-30 20:51:25
阅读次数:
178
我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。首先来看传统方法:publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}p...
分类:
编程语言 时间:
2014-07-30 20:38:04
阅读次数:
239
servlet的两个方面的知识,一个是模板方法的应用。另外一个是servlet多线程产生的原因。...
分类:
编程语言 时间:
2014-07-30 17:31:34
阅读次数:
325
随着处理数据量的逐渐增大,串行单核的程序,犹如残灯缺月,无法满足运用需求。大规模集群的出现,解决了这一技术难题。本文旨在探讨如何使用多CPU并行编程,关于CUDA的并行前面文章已有讲述。本文结构分为两部分,第一部分给出一段代码,模拟卖火车票的程序;第二部分对程序进行讲解,方便大家交流学习。
一、代码
{CSDN:CODE:438698}
二、代码讲解...
分类:
编程语言 时间:
2014-07-30 17:27:14
阅读次数:
271