From 4f8c687f44a75762dab93032a906954a0bb34f91 Mon Sep 17 00:00:00 2001
From: Brandon Rodriguez <brodriguez8774@gmail.com>
Date: Mon, 15 Feb 2021 23:27:39 -0500
Subject: [PATCH] Slightly improve responsiveness of output display

---
 src/load_balance_general.c | 1 +
 src/load_balance_schemes.c | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/load_balance_general.c b/src/load_balance_general.c
index eb9b300..e056d6d 100644
--- a/src/load_balance_general.c
+++ b/src/load_balance_general.c
@@ -243,6 +243,7 @@ void worker_handle_request(thread_struct* thread_args_ptr) {
 
                     // Load has been split. Immediately attempt to update main processor of change.
                     worker_send_status(thread_args_ptr->thread_num, thread_args_ptr->remaining_loads);
+                    worker_send_status(index, work_send_value);
                 } else {
                     // Worker has exactly 0 or 1 loads. Not enough to send. Reject request instead.
                     work_send_value = -1;
diff --git a/src/load_balance_schemes.c b/src/load_balance_schemes.c
index 68b0072..ee51fc8 100644
--- a/src/load_balance_schemes.c
+++ b/src/load_balance_schemes.c
@@ -82,7 +82,7 @@ void arr_main(thread_struct* thread_args_ptr) {
 
         // Check if message present from respective process.
         MPI_Iprobe(index, tag_status_update, MPI_COMM_WORLD, &msg_status_flag, MPI_STATUS_IGNORE);
-        if (msg_status_flag == 1) {
+        while (msg_status_flag == 1) {
             msg_recieved = 1;
 
             // Message present. Retrieve and handle.
@@ -90,6 +90,8 @@ void arr_main(thread_struct* thread_args_ptr) {
             MPI_Recv(recv_array, 2, MPI_INT, index, tag_status_update, MPI_COMM_WORLD, MPI_STATUS_IGNORE);
             main_display_status(thread_args_ptr, recv_array[0], recv_array[1], init_run);
             free(recv_array);
+
+            MPI_Iprobe(index, tag_status_update, MPI_COMM_WORLD, &msg_status_flag, MPI_STATUS_IGNORE);
         }
 
         // Increment for next thread.
-- 
GitLab