摘要: import java.io.*; import java.net.*; /** * 服务器端逻辑线程 */ public class LogicThread extends Thread { Socket socket; InputStream is; OutputStream os; publi 阅读全文
posted @ 2017-02-28 17:31 Tritone 阅读(328) 评论(0) 推荐(0) 编辑
摘要: http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html 一个服务器端一般都需要同时为多个客户端提供通讯,如果需要同时支持多个客户端,则必须使用前面介绍的线程的概念。简单来说,也就是当服务器端接收到一个连接时,启动一个专门的线程 阅读全文
posted @ 2017-02-28 17:26 Tritone 阅读(216) 评论(0) 推荐(0) 编辑
摘要: (1) 互斥条件:一个资源每次只能被一个进程使用。(2) 请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。(3) 不剥夺条件:进程已获得的资源,在末使用完之前,不能强行剥夺。(4) 循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系。这四个条件是死锁的必要条件,只要系统 阅读全文
posted @ 2017-02-28 17:08 Tritone 阅读(201) 评论(0) 推荐(0) 编辑
摘要: “生产者-消费者”模型,也就是生产者线程只负责生产,消费者线程只负责消费,在消费者发现无内容可消费时则睡觉。下面举一个比较实际的例子——生活费问题。 生 活费问题是这样的:学生每月都需要生活费,家长一次预存一段时间的生活费,家长和学生使用统一的一个帐号,在学生每次取帐号中一部分钱,直到帐号中没钱时 阅读全文
posted @ 2017-02-28 16:47 Tritone 阅读(2317) 评论(0) 推荐(0) 编辑
摘要: 在该示例代码中,TestAccount类是测试类,主要实现创建帐户Account类的对象,以及启动学生线程StudentThread和启动家长线程GenearchThread。在StudentThread线程中,执行的功能是每隔2秒中取一次钱,每次取50元。在GenearchThread线程中,执行 阅读全文
posted @ 2017-02-28 16:47 Tritone 阅读(959) 评论(0) 推荐(0) 编辑
摘要: 火车上车厢的卫生间,为了简单,这里只模拟一个卫生间,这个卫生间会被多个人同时使用,在实际使用时,当一个人进入卫生间时则会把卫生间锁上,等出来时 打开门,下一个人进去把门锁上,如果有一个人在卫生间内部则别人的人发现门是锁的则只能在外面等待。从编程的角度来看,这里的每个人都可以看作是一个线程 对象,而这 阅读全文
posted @ 2017-02-28 15:39 Tritone 阅读(199) 评论(0) 推荐(0) 编辑