gpt4 book ai didi

Java多线程概念

转载 作者:行者123 更新时间:2023-12-02 05:03:49 28 4
gpt4 key购买 nike

我有一个关于多线程的问题。

假设我想同时执行两个操作,就像我想将好友记录添加到文件中,并同时使用并发线程显示好友记录。

我创建了一个启动的线程,并由它负责显示,在启动该线程的主方法中,我执行了将记录保存到文件的操作。

这两个过程是否同时发生。

这是我的代码的一部分。

Runnable2 r2 = new Runnable2(L) ;
Thread t2 = new Thread(r2);
t2.start();

F.addElement(L);
oos1.writeObject(F);

最佳答案

不存在同时这样的事情。一个会在另一个之前发生,但是,如果您不使用显式同步机制,您无法知道哪个将首先执行(这取决于操作系统、硬件、JVM)。如果您运行该程序 100 次,则很可能有 99 次事件 1 将在事件 2 之前运行,而最后一次则相反,您会遇到难以重现的错误之一。

您确实不应该依赖顺序,在使用多线程时应该使用同步机制。

关于Java多线程概念,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27997087/

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