From ef4775b651c752d5876991a403ecad58bc1fb118 Mon Sep 17 00:00:00 2001 From: Jonathan LEI Date: Thu, 19 Feb 2026 00:27:45 +0800 Subject: [PATCH] Increase read buffer size from 4KB to 64KB The small buffer size has caused serious lags in large content use cases like scrolling on terminal multiplexers. --- .../src/main/java/com/termux/terminal/TerminalSession.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/terminal-emulator/src/main/java/com/termux/terminal/TerminalSession.java b/terminal-emulator/src/main/java/com/termux/terminal/TerminalSession.java index b068be20..caea870b 100644 --- a/terminal-emulator/src/main/java/com/termux/terminal/TerminalSession.java +++ b/terminal-emulator/src/main/java/com/termux/terminal/TerminalSession.java @@ -41,7 +41,7 @@ public final class TerminalSession extends TerminalOutput { * A queue written to from a separate thread when the process outputs, and read by main thread to process by * terminal emulator. */ - final ByteQueue mProcessToTerminalIOQueue = new ByteQueue(4096); + final ByteQueue mProcessToTerminalIOQueue = new ByteQueue(64 * 1024); /** * A queue written to from the main thread due to user interaction, and read by another thread which forwards by * writing to the {@link #mTerminalFileDescriptor}. @@ -336,7 +336,7 @@ public final class TerminalSession extends TerminalOutput { @SuppressLint("HandlerLeak") class MainThreadHandler extends Handler { - final byte[] mReceiveBuffer = new byte[4 * 1024]; + final byte[] mReceiveBuffer = new byte[64 * 1024]; @Override public void handleMessage(Message msg) {