❶ java中如何1s钟开启100个线程
让你开启线程的那个主线程休眠1秒:
for(int i=1;i<=100;i++)
{
new Thread(testThread).start();
}
Thread.sleep(1000);
❷ java如何用100个线程跑35000次任务
真会玩,跑35000次任务,电脑都被你玩坏。
可以定义一个线程池,将任务平均分配出去。
❸ 100张票,用java多线程实现3个窗口按顺序依次卖票,如何实现
很简单, 出票里加锁就行了完整代码:
publicclassTest{
publicstaticvoidmain(String[]args){
for(inti=0;i<3;i++){
newThread("线程"+i){
publicvoidrun(){
while(true){
intp=getNumber();
if(p>0){
System.out.println(getName()+"票号:"+p);
}else{
System.out.println("没票了");
break;
}
}
};
}.start();
}
}
publicstaticintnum=100; //总票数
/**
*synchronized同步锁
*@return
*/
(){
if(num>0){
returnnum--; //如果大于0,则返回当前票并减少一张
}
return0;
}
}
❹ Java 如何创建100个Thread 线程
有两种创建线程的方法:一是实现runnable接口,然后将它传递给thread的构造函数,创建一个thread对象;二是直接继承thread类。
❺ java 多线程 cpu利用率100%问题,我做了一个程序,10个线程,不到一分钟,cpu就100%了,怎么解决。
一般一个cpu核心可以搭载两个线程,你根据核心去搭载线程,不要乱放线程。
还有你有10个线程同时跑耗时操作最少也要4核的cpu,你可以减少线程或者减少线程中的耗时操作。
如果你是解码或者压缩程序的话那么cpu100%也很正常,如果是socket网络连接你可以看看windows iocp,linux epoll的实现。
❻ java 线程同步求和(100分)
// 你看看吧。。。 不懂的在问我
public class Test implements Runnable {
public static void main(String[] args) {
for (int i = 0; i < 100; i++) { // 创建100个线程
Test line = new Test();
Thread t = new Thread(line, i + "");
t.start();
}
}
public void run() { // 线程
for (int i = 0; i < 10; i++) { //每条线程输出的次数 如果你是10次 100个线程,如果同步,sum 应该是1000
try {
sum.list();
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
class sum {
static Integer sum = 0;
public synchronized static void list() { //synchronized 代表线程同步, 如果去掉.就会不同步
sum++;
System.out.println("我是线程" + Thread.currentThread().getName()
+ " sum--------->" + sum);
}
}
❼ java定义一个线程类,循环执行100次输出语句,每次输出线程名和循环的次数
思路: 创建线程继承线程类或者实现线程接口
重写RUN方法 在RUN方法里面写FOR循环, 循环语句块中打印线程类的静态方法.currentThread().getName() +循环的自增值。 ,主线程创建自定义对象实例。 调用START()方法OK、。
❽ java中实现runnable接口多线程技术,用五个线程,生成100个1到1000的随机数
//纯手打希望采纳:)
publicclassMain
{
privatestaticintnum=1;
publicstaticvoidmain(String[]args)
{
Threada=newThread(newRandomRunnable("A"));
Threadb=newThread(newRandomRunnable("B"));
Threadc=newThread(newRandomRunnable("C"));
Threadd=newThread(newRandomRunnable("D"));
Threade=newThread(newRandomRunnable("E"));
a.start();
b.start();
c.start();
d.start();
e.start();
}
publicstaticvoidadd(Stringname)
{
synchronized(Main.class)
{
if(num<101)
{
System.out.println("线程"+name+"随机数:"
+(1+(int)(Math.random()*1000)+" "+num));
num++;
}
}
}
publicstaticintgetNum()
{
returnnum;
}
}
{
privateStringname;
publicRandomRunnable(Stringname)
{
this.name=name;
}
publicvoidrun()
{
while(Main.getNum()<101)
{
Main.add(name);
}
}
}
❾ Java 如何创建100个Thread 线程
“创建100个线程”和“创建1个线程”是一样的。
(如果不一样,只可能是你问得唐突、不清晰)
你可以把100个线程放到一个数组中。
Thread threads[]=new Thread[100];
//然后逐个生成启动
for(int i=0;i<100;i++){
threads[i]=new Thread(//put some runnable here );
threads[i].start();
}