Skip to content

Commit 39fb60a

Browse files
committed
update read to length more efficiently
1 parent ded0b12 commit 39fb60a

8 files changed

Lines changed: 78 additions & 31 deletions

File tree

.idea/encodings.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/gradle.xml

Lines changed: 3 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 52 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/app.iml

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -64,14 +64,6 @@
6464
<sourceFolder url="file://$MODULE_DIR$/src/main/jni" isTestSource="false" />
6565
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
6666
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
67-
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
68-
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
69-
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
70-
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
71-
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
72-
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
73-
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
74-
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
7567
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
7668
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
7769
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
@@ -80,6 +72,14 @@
8072
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/jni" isTestSource="true" />
8173
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
8274
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
75+
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
76+
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
77+
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
78+
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
79+
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
80+
<sourceFolder url="file://$MODULE_DIR$/src/test/jni" isTestSource="true" />
81+
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
82+
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
8383
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/assets" />
8484
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
8585
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/builds" />
@@ -101,7 +101,6 @@
101101
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant-run-support" />
102102
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
103103
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/manifests" />
104-
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/pre-dexed" />
105104
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/reload-dex" />
106105
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
107106
<excludeFolder url="file://$MODULE_DIR$/build/intermediates/restart-dex" />

app/src/main/java/com/vilyever/androidsocketclient/TestClient.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,11 +49,11 @@ public SocketClient getLocalSocketClient() {
4949

5050
// __i__setupVariableHeartBeat(this.localSocketClient);
5151

52-
__i__setupReadToTrailerForSender(this.localSocketClient);
53-
__i__setupReadToTrailerForReceiver(this.localSocketClient);
52+
// __i__setupReadToTrailerForSender(this.localSocketClient);
53+
// __i__setupReadToTrailerForReceiver(this.localSocketClient);
5454

55-
// __i__setupReadByLengthForSender(this.localSocketClient);
56-
// __i__setupReadByLengthForReceiver(this.localSocketClient);
55+
__i__setupReadByLengthForSender(this.localSocketClient);
56+
__i__setupReadByLengthForReceiver(this.localSocketClient);
5757

5858
// __i__setupReadManuallyForSender(this.localSocketClient);
5959
// __i__setupReadManuallyForReceiver(this.localSocketClient);

app/src/main/java/com/vilyever/androidsocketclient/TestServer.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,11 +55,11 @@ protected SocketServer getSocketServer() {
5555

5656
// __i__setupVariableHeartBeat(this.socketServer);
5757

58-
__i__setupReadToTrailerForSender(this.socketServer);
59-
__i__setupReadToTrailerForReceiver(this.socketServer);
58+
// __i__setupReadToTrailerForSender(this.socketServer);
59+
// __i__setupReadToTrailerForReceiver(this.socketServer);
6060

61-
// __i__setupReadByLengthForSender(this.socketServer);
62-
// __i__setupReadByLengthForReceiver(this.socketServer);
61+
__i__setupReadByLengthForSender(this.socketServer);
62+
__i__setupReadByLengthForReceiver(this.socketServer);
6363

6464
// __i__setupReadManuallyForSender(this.socketServer);
6565
// __i__setupReadManuallyForReceiver(this.socketServer);

socketclient/socketclient.iml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<module external.linked.project.id=":socketclient" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="com.github.vilyever" external.system.module.version="2.0.3" type="JAVA_MODULE" version="4">
2+
<module external.linked.project.id=":socketclient" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="com.github.vilyever" external.system.module.version="3.0.2" type="JAVA_MODULE" version="4">
33
<component name="FacetManager">
44
<facet type="android-gradle" name="Android-Gradle">
55
<configuration>

socketclient/src/main/java/com/vilyever/socketclient/helper/SocketInputReader.java

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ public class SocketInputReader extends Reader {
1717

1818
private InputStream inputStream;
1919

20-
2120
/* Constructors */
2221
public SocketInputReader(InputStream inputStream) {
2322
super(inputStream);
@@ -58,17 +57,12 @@ public byte[] readToLength(int length) throws IOException {
5857
try {
5958
byte[] buffer = new byte[length];
6059
int index = 0;
61-
int c;
62-
63-
while (-1 != (c = this.inputStream.read())) {
64-
if (index < length) {
65-
buffer[index++] = (byte) c;
66-
}
60+
int readCount = 0;
6761

68-
if (index >= length) {
69-
break;
70-
}
71-
}
62+
do {
63+
readCount = this.inputStream.read(buffer, index, length - index);
64+
index += readCount;
65+
} while (readCount != -1 && index < length);
7266

7367
if (index != length) {
7468
return null;

0 commit comments

Comments
 (0)