/// <summary>
 /// Adds an object of <see cref="IThreadSynchronizedObject"/> to the <see cref="UnityThreadSynchronizer"/>.
 /// </summary>
 /// <param name="item">
 /// The object of <see cref="IThreadSynchronizedObject"/> to add to the <see cref="UnityThreadSynchronizer"/>.
 /// </param>
 public void Add(IThreadSynchronizedObject item)
 {
     addedObjects?.Enqueue(item);
 }
 /// <summary>
 /// Determines whether the <see cref="UnityThreadSynchronizer"/> contains a specific object of <see cref="IThreadSynchronizedObject"/>.
 /// </summary>
 /// <param name="item">The object to locate in the <see cref="UnityThreadSynchronizer"/>.</param>
 /// <returns>
 /// <c>true</c> if <c>item</c> is found in the <see cref="UnityThreadSynchronizer"/>; otherwise, <c>false</c>.
 /// </returns>
 public bool Contains(IThreadSynchronizedObject item) => synchronizedObjects != null && synchronizedObjects.Contains(item);
 /// <summary>
 /// Removes the first occurrence of a specific object of <see cref="IThreadSynchronizedObject"/>
 /// from the <see cref="UnityThreadSynchronizer"/>.
 /// </summary>
 /// <param name="item">The object to remove from the <see cref="UnityThreadSynchronizer"/>.</param>
 /// <returns>
 /// <c>true</c> if <paramref name="item"/> was successfully removed from the <see
 /// cref="UnityThreadSynchronizer"/>; otherwise, <c>false</c>. This method also returns <c>false</c> if
 /// <paramref name="item"/> is not found in the original <see cref="UnityThreadSynchronizer"/>.
 /// </returns>
 public bool Remove(IThreadSynchronizedObject item)
 {
     removedObjects.Enqueue(item);
     return(false);
 }