Retrying try-lock in synchronization_test to avoid arm64 flakes. (#16436)

diff --git a/runtime/src/iree/base/internal/synchronization_test.cc b/runtime/src/iree/base/internal/synchronization_test.cc
index a44b994..4299f9b 100644
--- a/runtime/src/iree/base/internal/synchronization_test.cc
+++ b/runtime/src/iree/base/internal/synchronization_test.cc
@@ -132,9 +132,10 @@
 TEST(MutexTest, Lifetime) {
   iree_mutex_t mutex;
   iree_mutex_initialize(&mutex);
-  bool did_lock = iree_mutex_try_lock(&mutex);
-  EXPECT_TRUE(did_lock);
-  if (did_lock) iree_mutex_unlock(&mutex);
+  while (!iree_mutex_try_lock(&mutex)) {
+    // NOTE: functions with try in their name may fail spuriously.
+  }
+  iree_mutex_unlock(&mutex);
   iree_mutex_lock(&mutex);
   iree_mutex_unlock(&mutex);
   iree_mutex_deinitialize(&mutex);
@@ -153,9 +154,10 @@
 TEST(SlimMutexTest, Lifetime) {
   iree_slim_mutex_t mutex;
   iree_slim_mutex_initialize(&mutex);
-  bool did_lock = iree_slim_mutex_try_lock(&mutex);
-  EXPECT_TRUE(did_lock);
-  if (did_lock) iree_slim_mutex_unlock(&mutex);
+  while (!iree_slim_mutex_try_lock(&mutex)) {
+    // NOTE: functions with try in their name may fail spuriously.
+  }
+  iree_slim_mutex_unlock(&mutex);
   iree_slim_mutex_lock(&mutex);
   iree_slim_mutex_unlock(&mutex);
   iree_slim_mutex_deinitialize(&mutex);