You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2022/03/15 17:29:50 UTC
[tomcat] 02/03: Fix sync issues identified by SpotBugs
This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
commit 017a5d73fed304eaeed34be835bc0b886968e9da
Author: Mark Thomas <ma...@apache.org>
AuthorDate: Tue Mar 15 17:18:09 2022 +0000
Fix sync issues identified by SpotBugs
---
.../catalina/nonblocking/TestNonBlockingAPI.java | 3 ++-
.../tribes/test/transport/SocketNioReceive.java | 24 ++++++++++++++--------
2 files changed, 17 insertions(+), 10 deletions(-)
diff --git a/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java b/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java
index 0ca63ab..8023e8f 100644
--- a/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java
+++ b/test/org/apache/catalina/nonblocking/TestNonBlockingAPI.java
@@ -1144,7 +1144,8 @@ public class TestNonBlockingAPI extends TomcatBaseTest {
try {
byte buffer[] = new byte[1 * 4];
while (is.isReady() && !is.isFinished()) {
- is.read(buffer);
+ @SuppressWarnings("unused")
+ int ignore = is.read(buffer);
}
String body = new String(buffer, StandardCharsets.UTF_8);
Assert.assertTrue(body.equals("body"));
diff --git a/test/org/apache/catalina/tribes/test/transport/SocketNioReceive.java b/test/org/apache/catalina/tribes/test/transport/SocketNioReceive.java
index 763d7b2..9936c63 100644
--- a/test/org/apache/catalina/tribes/test/transport/SocketNioReceive.java
+++ b/test/org/apache/catalina/tribes/test/transport/SocketNioReceive.java
@@ -27,13 +27,15 @@ import org.apache.catalina.tribes.membership.MemberImpl;
import org.apache.catalina.tribes.transport.nio.NioReceiver;
public class SocketNioReceive {
- static int count = 0;
- static int accept = 0;
- static long start = 0;
- static double mb = 0;
- static int len = 0;
- static DecimalFormat df = new DecimalFormat("##.00");
- static double seconds = 0;
+ private static int count = 0;
+ private static final Object countLock = new Object();
+ private static int accept = 0;
+ private static final Object acceptLock = new Object();
+ private static long start = 0;
+ private static double mb = 0;
+ private static int len = 0;
+ private static DecimalFormat df = new DecimalFormat("##.00");
+ private static double seconds = 0;
protected static final Object mutex = new Object();
public static void main(String[] args) throws Exception {
@@ -74,7 +76,9 @@ public class SocketNioReceive {
start = System.currentTimeMillis();
}
mb += ( (double) len) / 1024 / 1024;
- synchronized (this) {count++;}
+ synchronized (countLock) {
+ count++;
+ }
if ( ( (count) % 10000) == 0) {
long time = System.currentTimeMillis();
seconds = ( (double) (time - start)) / 1000;
@@ -84,7 +88,9 @@ public class SocketNioReceive {
@Override
public boolean accept(ChannelMessage msg) {
- synchronized (this) {accept++;}
+ synchronized (acceptLock) {
+ accept++;
+ }
return true;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org