Final answer:
In multi-threaded applications, a high degree of thread coordination and interaction typically leads to a high level of synchronization. This is to ensure data consistency and correct operation, which can be complex and requires careful design to prevent concurrency problems.
Step-by-step explanation:
Typically, there will need to be a rather high degree of coordination and interaction among the threads of an application, leading to a high level of synchronization. When multiple threads operate concurrently, there's a need for them to work harmoniously to ensure data consistency and correct operation. This involves mechanisms like mutexes, semaphores, and locks that help in coordinating access to shared resources. In situations involving complex thread interaction, even higher levels of synchronization might be necessary, which could introduce complexities such as deadlock, livelock, or resource starvation. Therefore, designing multi-threaded applications with a high degree of synchronization requires careful planning to maintain performance while avoiding concurrency issues.