diff options
| author | Chris Wailes <chriswailes@google.com> | 2019-08-21 17:22:54 -0700 |
|---|---|---|
| committer | Chris Wailes <chriswailes@google.com> | 2019-08-27 14:51:21 -0700 |
| commit | 9d8b92685946c5029a71ac7d90b6b68dceecc773 (patch) | |
| tree | 4c5043d815af9c68292f77d28126bd7ab4e2a29d /core/java/android | |
| parent | c046f9f0398e2c68c6597aaa8780bcd804af0e10 (diff) | |
Remove a misleading "flush" function.
This patch removes LocalSocketImpl.flush(). In practice this function
was simply a wrapper around `Thread.sleep(10)`. All direct calls to
this function have been removed. The `flush()` function is still called
on several objects that wrap a SocketOutputStream.
This will make booting a device 20ms faster than it currently is.
Bug: 139192244
Test: Build -> flash -> boot -> launch app
Change-Id: I0a96f4bc72461670370f61e847349f32af5ac774
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/bluetooth/BluetoothOutputStream.java | 12 | ||||
| -rw-r--r-- | core/java/android/bluetooth/BluetoothSocket.java | 14 | ||||
| -rw-r--r-- | core/java/android/net/LocalSocketImpl.java | 34 |
3 files changed, 0 insertions, 60 deletions
diff --git a/core/java/android/bluetooth/BluetoothOutputStream.java b/core/java/android/bluetooth/BluetoothOutputStream.java index dfec4e102fd4..a0aa2dee9d34 100644 --- a/core/java/android/bluetooth/BluetoothOutputStream.java +++ b/core/java/android/bluetooth/BluetoothOutputStream.java @@ -75,16 +75,4 @@ import java.io.OutputStream; } mSocket.write(b, offset, count); } - - /** - * Wait until the data in sending queue is emptied. A polling version - * for flush implementation. Use it to ensure the writing data afterwards will - * be packed in the new RFCOMM frame. - * - * @throws IOException if an i/o error occurs. - * @since Android 4.2.3 - */ - public void flush() throws IOException { - mSocket.flush(); - } } diff --git a/core/java/android/bluetooth/BluetoothSocket.java b/core/java/android/bluetooth/BluetoothSocket.java index a6e3153d6af7..760166bfcc5d 100644 --- a/core/java/android/bluetooth/BluetoothSocket.java +++ b/core/java/android/bluetooth/BluetoothSocket.java @@ -515,20 +515,6 @@ public final class BluetoothSocket implements Closeable { return mSocketIS.available(); } - /** - * Wait until the data in sending queue is emptied. A polling version - * for flush implementation. Used to ensure the writing data afterwards will - * be packed in new RFCOMM frame. - * - * @throws IOException if an i/o error occurs. - */ - @UnsupportedAppUsage - /*package*/ void flush() throws IOException { - if (mSocketOS == null) throw new IOException("flush is called on null OutputStream"); - if (VDBG) Log.d(TAG, "flush: " + mSocketOS); - mSocketOS.flush(); - } - /*package*/ int read(byte[] b, int offset, int length) throws IOException { int ret = 0; if (VDBG) Log.d(TAG, "read in: " + mSocketIS + " len: " + length); diff --git a/core/java/android/net/LocalSocketImpl.java b/core/java/android/net/LocalSocketImpl.java index fe7632c25445..b066a15106af 100644 --- a/core/java/android/net/LocalSocketImpl.java +++ b/core/java/android/net/LocalSocketImpl.java @@ -157,40 +157,6 @@ class LocalSocketImpl write_native(b, myFd); } } - - /** - * Wait until the data in sending queue is emptied. A polling version - * for flush implementation. - * @throws IOException - * if an i/o error occurs. - */ - @Override - public void flush() throws IOException { - FileDescriptor myFd = fd; - if (myFd == null) throw new IOException("socket closed"); - - // Loop until the output buffer is empty. - Int32Ref pending = new Int32Ref(0); - while (true) { - try { - // See linux/net/unix/af_unix.c - Os.ioctlInt(myFd, OsConstants.TIOCOUTQ, pending); - } catch (ErrnoException e) { - throw e.rethrowAsIOException(); - } - - if (pending.value <= 0) { - // The output buffer is empty. - break; - } - - try { - Thread.sleep(10); - } catch (InterruptedException ie) { - break; - } - } - } } private native int read_native(FileDescriptor fd) throws IOException; |
