Проверил работу в идее. Все корректно.
При проверке валидатором получил, что "программа работала слишком долго и была закрыта".
Подскажите, пожалуйста, куда стоит смотреть и что по этой теме почитать.
package com.javarush.task.task16.task1629;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Solution {
public static volatile BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
public static volatile int countOfReadedData = 0;
public static void main(String[] args) throws InterruptedException {
Read3Strings t1 = new Read3Strings();
Read3Strings t2 = new Read3Strings();
//add your code here - добавьте код тут
t1.start();
t1.join();
t2.start();
t2.join();
t1.printResult();
t2.printResult();
}
//add your code here - добавьте код тут
public static class Read3Strings extends Thread
{
private String[] data = new String[3];
@Override
public void run() {
synchronized (reader)
{
while (countOfReadedData < 3)
{
try {
if (reader.ready()) {
data[countOfReadedData++] = reader.readLine();
}
}
catch (IOException e)
{
}
}
countOfReadedData = 0;
}
}
public void printResult()
{
for (String s: data
) {
System.out.print(s + " ");
}
System.out.print("\n\r");
}
}
}