Threads, @spawn on Mac - inconsistent behavior

Welcome! Your post is difficult to read. I suggest, you edit it following …

That may be due to load imbalance. If you Threads.@spawn several tasks doing IO operations, the load can become very imbalanced (as in that example). This happens because the tasks yield immediately after start and the Julia scheduler then starts the next task on the same thread.

Without having investigated further I guess this may be also the case in your problem since your functions/tasks get an MyRGB[....] argument.