Skip to content

Task_2_1_2#15

Open
LookAsLukas wants to merge 4 commits into
mainfrom
Task_2_1_2
Open

Task_2_1_2#15
LookAsLukas wants to merge 4 commits into
mainfrom
Task_2_1_2

Conversation

@LookAsLukas
Copy link
Copy Markdown
Owner

No description provided.

@github-actions
Copy link
Copy Markdown

File Coverage [90.06%] 🍏
TaskResult.java 100% 🍏
Task.java 100% 🍏
Slave.java 93.6% 🍏
MultiThreaded.java 93% 🍏
Master.java 88.09% 🍏
PrimeChecker.java 83.33% 🍏
Total Project Coverage 90.06% 🍏

@github-actions
Copy link
Copy Markdown

File Coverage [90.06%] 🍏
TaskResult.java 100% 🍏
Task.java 100% 🍏
Slave.java 93.6% 🍏
MultiThreaded.java 93% 🍏
Master.java 88.09% 🍏
PrimeChecker.java 83.33% 🍏
Total Project Coverage 90.06% 🍏

@LookAsLukas LookAsLukas requested a review from galinabykova May 22, 2026 12:26
Copy link
Copy Markdown
Collaborator

@galinabykova galinabykova left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

в твоей версии slave знают host мастера, но задание предполагает, что они будут находить друг друга в одной подсети. Это нужно исправить

* @param taskId .
* @param hasNonPrime .
*/
public record TaskResult(int taskId, boolean hasNonPrime) implements Serializable {
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

какие есть плюсы и минусы у выбранного тобой формата передачи данных (бинарная сериализация)

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ну если вопрос про сравнение бинарной сериализации и какого-нибудь JSONа, то с бинарной проще работать, потому что не надо никаких парсеров, ну и потенциально это компактнее, хотя наверное не всегда
А из минусов, из-за такой сериализации я вынужден пользоваться джавой на обоих концах, потому что объект джавовский. Ну и где-то пишут про то, что потенциально злоумышленник может зашить туда что-то такое, что сможет исполнить то, что не надо на моей машине

Comment on lines +138 to +140
for (var task : taskQueue) {
System.out.print(task.taskId() + " ");
}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

мне кажется, такой лог занимает очень много времени

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

это да, просто с ним нагляднее, как оно работает, но могу убрать

}
System.out.println();
tasksLeft--;
lock.notifyAll();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

тебе нужно будить даже если составного числа не было?

Copy link
Copy Markdown
Owner Author

@LookAsLukas LookAsLukas May 29, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

действительно, можно будить только на true или если таски кончились

private final AtomicBoolean globalResult = new AtomicBoolean(false);
private final AtomicBoolean isDone = new AtomicBoolean(false);
private final List<Thread> workerHandlers = new CopyOnWriteArrayList<>();
private final Object lock = new Object();
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

почему ты решил использовать монитор нового объекта, а не монитор самого Master?

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

я не подумал мониторить мастер)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

нужен тест, показывающий, что после отсоединения одного из slave, его работа будет досчитана

@github-actions
Copy link
Copy Markdown

File Coverage [90.89%] 🍏
TaskResult.java 100% 🍏
Task.java 100% 🍏
Master.java 93.37% 🍏
MultiThreaded.java 93% 🍏
Slave.java 85.17% 🍏
PrimeChecker.java 83.33% 🍏
Total Project Coverage 90.89% 🍏

@github-actions
Copy link
Copy Markdown

File Coverage [90.89%] 🍏
TaskResult.java 100% 🍏
Task.java 100% 🍏
Master.java 93.37% 🍏
MultiThreaded.java 93% 🍏
Slave.java 85.17% 🍏
PrimeChecker.java 83.33% 🍏
Total Project Coverage 90.89% 🍏

@LookAsLukas LookAsLukas requested a review from galinabykova May 29, 2026 16:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants