multithread.java

来自「lab1为多线程计算圆周率的程序 lab2为多线程计算矩阵乘法的程序 有实验」· Java 代码 · 共 38 行

JAVA
38
字号
package lab1;

public class MultiThread extends Thread{
	Pi pi = null;
	int num1,num2;
	long start,end;

	MultiThread(int n1,int n2,Pi p) {
		super();
		num1 = n1;
		num2 = n2;
		pi = p;
		
		long temp = pi.num_steps/n2;
//		System.out.println(temp);
		start = (n1-1)*temp;
        if(num1==num2) {
			end=p.num_steps-1;
		}
        else {
        	end = start+temp-1;	
        }
	}
	
	public void run() {
		long i;
		double x;
		double thread_sum=0;
		for (i=start; i<=end; i++){
		      x = (i+0.5)*pi.step;
		      thread_sum = thread_sum + 4.0/(1.0 + x*x);
		   }
		pi.sum = pi.sum+thread_sum;
	}
	

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?