some try catching (#1)

Co-authored-by: Darkress <30271678+DarkressX@users.noreply.github.com>
Reviewed-on: darkress/PixelFloodClient#1
This commit was merged in pull request #1.
This commit is contained in:
darkress
2023-06-10 16:44:43 +02:00
parent d1bbb97ebf
commit 41242bf3ed

View File

@@ -9,9 +9,13 @@ import java.util.ArrayList;
class Worker extends Thread {
String HOSTNAME;
int PORT;
Socket socket;
String[] pixelArray;
public Worker(String HOSTNAME, int PORT, String[] pixelArray) {
this.HOSTNAME = HOSTNAME;
this.PORT = PORT;
try {
this.socket = new Socket(HOSTNAME, PORT);
} catch (IOException e) {
@@ -20,15 +24,21 @@ class Worker extends Thread {
this.pixelArray = pixelArray;
}
@Override
public void run() {
while(true) {
for(int i = 0; i < pixelArray.length; i++) {
byte[] payload = pixelArray[i].getBytes();
try {
try {
for(int i = 0; i < pixelArray.length; i++) {
byte[] payload = pixelArray[i].getBytes();
socket.getOutputStream().write(payload);
} catch (IOException e) {
throw new RuntimeException(e);
}
} catch (IOException e) {
try {
this.socket = new Socket(HOSTNAME, PORT);
} catch (IOException i) {
i.printStackTrace();
}
System.out.println(this.getId() + "just dies. Trying again...");
}
}
}