易截截图软件、单文件、免安装、纯绿色、仅160KB

用JAVA实现多线程(生产者与消费者问题)


public class MultiThread {
 public static void main(String[] args) {
  ProductStack box = new ProductStack("box");
  Producer p1 = new Producer(box, "p1");
  Producer p2 = new Producer(box, "p2");
  Producer p3 = new Producer(box, "p3");
  Consumer c1 = new Consumer(box, "c1");
  Consumer c2 = new Consumer(box, "c2");
  //Consumer c3=new Consumer(box,"c3");
  //Consumer c4=new Consumer(box,"c4");
   //Consumer c5=new Consumer(box,"c5");
  p1.start();
  p2.start();
  p3.start();
  c1.start();
  c2.start();
    //c3.start();
     //c4.start();
    // c5.start();
 }
}
class Product {
 int id;
 public Product(int id) {
  this.id = id;
 }
 public String toSring() {
  return "Product" + id;
 }
}
class ProductStack {
 String name;
 static int point = 0;
 private Product[] p = new Product[10];
 public ProductStack(String name) {
  this.name = name;
 }
 public String getname() {
  return name;
 }
 public synchronized int getpoint() {
  return point;
 }
 public synchronized void push(Product a) {
  while (point >= p.length) {
   try {
    this.wait();
   } catch (InterruptedException e) {
    e.printStackTrace();
   }
   this.notifyAll();
  }
  p[point] = a;
  // System.out.println(point);
  // System.out.println(p[point].toSring());
  point++;
  // yield();
 }
 private void yield() {
 }
 public synchronized Product pop() {
  while (point == 0) {
   try {
    


相关文档:

Java I/O常用流示例


package io;   
import java.io.*;   
/**  
* @author 高枕吴忧  
* 利用缓冲区原理,BufferedInputStream,  
* 实现的文件字节流读取功能示范  
*  
*/  
public class BufferedInOutputStream {  & ......

JAVA基础知识精华总结

1、 对象的初始化
(1) 非静态对象的初始化
在创建对象时,对象所在类的所有数据成员会首先进行初始化。
基本类型:int型,初始化为0。
如果为对象:这些对象会按顺序初始化。
※在所有类成员初始化完成之后,才调用本类的构造方法创建对象。
构造方法的作用就是初始化。
(2) 静态对象的初始化
程序中主类的 ......

通过 DAOFactory 的泛型写法来演示Java泛型的特殊用法

通过 DAOFactory 的泛型写法来演示Java泛型的特殊用法
小型项目中常常都没有用三方持久化框架,而大都是用公司或自行依据DAO模式封装的一些组件来完成数据库持久化动作,并且,通常为了更具可扩展性,常常使用抽象工厂模式来解耦合。
一、先看代码
1、简单工厂代码
/************************************************* ......

在java中使用key value型数据库Berkeley DB

除了关系型数据库外,还有key-value型数据库可以选择,在大型的查询系统中,key-value型数据库可以出色的完成某些任务。
Oracle的Berkeley DB就是一种key-value型数据库,本文简要介绍在java中使用Berkeley DB。
PartKey.java:
import java.io.Serializable;
public class PartKey implements Serializable
{
priva ......

Java模拟HTTP的Get和Post请求

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.URIException;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.meth ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号