synchronized 相关问题

如果一个块或方法的条目由Java` synchronized`关键字控制,则该块或方法被称为“同步”。这导致对它的访问限制为一次一个线程:当并发访问发生时,它们按照未指定的顺序进行顺序化。

一个echo服务器,用于处理带有线程池的客户端

客户端连接工作(我使用telnet),但是当我用任何客户端写一条消息时没有任何反应 - 甚至是带有空字符的条件(用于断开连接)。我不明白为什么。我有能力......

回答 1 投票 0

ConcurrentHashMap完全安全吗?

这是来自JavaDoc的关于ConcurrentHashMap的一段话。它说检索操作通常不会阻塞,因此可能与更新操作重叠。这是否意味着get()方法不是线程...

回答 6 投票 44

Communication Manager,控制异步网络消息传递设计的速率

我有一个我需要访问的系统,对该系统的访问速率是1次API调用。但是,我希望通过异步的Web界面提供对它的访问。我的设计是......

回答 1 投票 0

有条件地定义同步块

假设我有一个方法:public void run(){synchronized(this.foo){}}但有时当我运行此方法时,我不需要同步任何东西。什么是有条件的良好模式......

回答 1 投票 9

Java内存模型中的同步和易失性如何工作?

在“Effective Java”一书中://破碎! - 您希望该程序运行多长时间? public class StopThread {private static boolean stopRequested; public static void main(String [] ...

回答 3 投票 4

ConcurrentModificationException甚至在LinkedHashMap上使用Collections.sychronizedMap [重复]

我正在我的类中使用Map对象,我已经与LinkedHashMap的Collections.synchronizedMap()同步,如下所示:private GameObjectManager(){gameObjects = Collections ....

回答 3 投票 5

Java并发中的AbstractQueuedSynchronizer

什么是Java的concurrent.locks包中的AbstractQueuedSynchronizer用于?有人能否对其方法有所了解doAcquireInterruptibly和parkAndCheckInterrupt?

回答 3 投票 8

Java rest服务器:避免在处理项目时删除它

我有一个在类中是静态的arrayList。在每个请求的开头,我删除所有过时的项目:arrayList.entrySet()。removeIf(entry - > entry.getValue()。isObsolete()); ......

回答 1 投票 0

@Singleton vs @ApplicationScope

对于一个项目,我需要一个唯一的ID生成器。所以我想到了具有同步方法的Singleton。由于Singleton遵循传统的Singleton模式(私有静态实例)......

回答 2 投票 4

Java是否会重新锁定单个锁

这个问题是关于Java使用偏向锁定的启发式方法之一。下一段是为了未来的读者;我怀疑任何能回答这个问题的人都可以安全地跳过它。就我而言......

回答 1 投票 2

如何防止同步方法中的死锁?

在下面的代码中,有可能进入类似于本问题“死锁和同步方法”的死锁,现在我理解为什么两个线程正在进入死锁,但是当我......

回答 1 投票 1

Java线程同步方法

我有以下代码导入java.util.concurrent。*; public class dsd {private static boolean stopRequested; private static void requestStop(){stopRequested = true;私有静态...

回答 4 投票 1

基于参数的Java同步(名为mutex / lock)

我正在寻找一种基于它接收的参数同步方法的方法,如下所示:public synchronized void doSomething(name){// some code}我想方法doSomething是...

回答 8 投票 17

synchronized,wait / notifyAll必须在同一个对象上,但为什么呢?

当我尝试使用带有synchronized的wait()进行简单的演示时,我发现了一个有趣的事情,下面的演示给了我意想不到的输出。公共课WaitZero {私人...

回答 1 投票 -1

为什么ReentrantLock在演示中同步工作时无效?

我试图遵循Java中的ReentrantLock示例,同步与ReentrantLock类教程之间的差异。我有一个以-ea开头的公共课ReentrantLockZero {...

回答 1 投票 1

如何编写Java多线程代码用于替代生产者和消费者方法。它应该有3个生产者(P1,P2,P3)和1个消费者(C1)

我能否获得实现这一目标的明确方法。我使用了join并等待替代生产者和消费者执行。在一次采访中询问了这个问题。他不喜欢我的解决方案。一世 ...

回答 1 投票 0

死锁 - 在这个例子中它是如何发生的?

任何人都可以解释:为什么我们陷入僵局? Gaston怎么能在Alphonse退出之前进入功能弓? (它应该从函数bowBack()返回以退出函数bow() - 或者...

回答 4 投票 22

方法同步,但由于非序列化的线程行为,代码产生随机结果

这是我的代码:public class ThreadDemo {public static void main(String args [])throws Exception {Printer [] printers = new Printer [5]; printers [0] = new Printer(“@ base”);打印机[1] = ...

回答 3 投票 2

用于Java中读写操作的易失性变量

我正在学习Java中的volatile和synchronized,我发现synchronized用于读取 - 修改 - 写入操作,如x ++,而volatile用于读写操作。我想问你2 ...

回答 1 投票 0

在AtomicBoolean上同步?

在我正在处理的应用程序中,我找到了以下代码片段:public class MyClass {private AtomicBoolean atomicBoolean = new AtomicBoolean(false); public void Execute(){// ...

回答 2 投票 2

© www.soinside.com 2019 - 2024. All rights reserved.