gpt4 book ai didi

2 个线程的 Java 扫描器

转载 作者:行者123 更新时间:2023-12-02 04:06:24 26 4
gpt4 key购买 nike

我正在尝试构建一个程序,我想在其中输入(使用扫描仪)一些数字,例如 5,3,6,65,33,1,24,12,然后使用 2 个线程打印它们。第一个线程将打印从低到高,第二个线程将打印从高到低。我将在这里编写伪代码,然后我将解释我的问题。

class tThread() extends Thread
{
tThread(String name)
{
super(name);
start();
}

public void run()
{
// here is Scanner

//open try block
if(getName().equals("Thread #1"))
{
//here I write data who print lower to higher
}
else if(getName().equals("Thread #2"))
{
//here I write data who print higher to lower
}
}


public class ThreadDemo
{
public static void main(String[] args)
{
tThread t1 = new tThread("Thread #1");
tThread t2 = new tThread("Thread #2");
}

因为 Scanner 位于 run() 方法内部,并且因为我在 main() 中有 2 个线程,当我运行这个项目时,我需要输入两次数据。如何将 Scanner 仅放在 main 中以仅请求一次输入,然后将输入发送到这两个线程?我知道也许我需要同步这两个线程,但这不是问题,我稍后会这样做。我只想知道如何使用 Scanner 解决这个问题。

最佳答案

在类中使用静态变量并对其进行同步。

扫描并将数据放入其中。

在启动线程之前。

关于2 个线程的 Java 扫描器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34239511/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com