commit 0c9cf3e014fcdb2b3db790accccbe9c8425f5e5f
parent 05d1676032a732c72fb03ac358f8e3cdbb498a95
Author: Matthias Jaros <jaros@mailbox.org>
Date: Thu, 22 Jan 2026 21:39:21 +0100
Added baseline fd
Diffstat:
2 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/src/main/java/com/it_jaros/networkScanner/App.java b/src/main/java/com/it_jaros/networkScanner/App.java
@@ -17,6 +17,7 @@ public class App {
fd.start(20); // sample every 20ms
List<Integer> openPorts = scanner.scanPorts(target, 10000);
printPorts(target, openPorts);
+ System.out.println("FD baseline: " + fd.baseline());
System.out.println("FD limit: " + fd.maxFds());
System.out.println("Peak open FDs during scan: " + fd.peakOpenFds());
}
diff --git a/src/main/java/com/it_jaros/networkScanner/FdCounter.java b/src/main/java/com/it_jaros/networkScanner/FdCounter.java
@@ -14,8 +14,10 @@ public final class FdCounter implements AutoCloseable {
private final ScheduledExecutorService ses =
Executors.newSingleThreadScheduledExecutor(Thread.ofPlatform().daemon().factory());
private final AtomicLong peak = new AtomicLong(0);
+ private long baseline;
public void start(long everyMillis) {
+ this.baseline = os.getOpenFileDescriptorCount();
ses.scheduleAtFixedRate(() -> {
long now = os.getOpenFileDescriptorCount();
peak.accumulateAndGet(now, Math::max);
@@ -29,6 +31,10 @@ public final class FdCounter implements AutoCloseable {
public long maxFds() {
return os.getMaxFileDescriptorCount();
}
+
+ public long baseline() {
+ return this.baseline;
+ }
@Override public void close() {
ses.shutdownNow();