Синхронизация методов в StringBuffer работает так, что все операции с конкретным экземпляром выполняются как будто в последовательном порядке, который соответствует порядку вызовов методов каждым из участвующих потоков. 13
Это обеспечивает потокобезопасность класса, то есть возможность безопасного выполнения операций изменения строки в многопоточной среде. 2
Пример работы синхронизации: ключевое слово synchronized
в методе append() гарантирует, что только один поток сможет выполнить его в одно и то же время, тем самым предотвращая состояние гонки. 2
При этом, если происходит операция с последовательностью источника (например, добавление или вставка из неё), класс синхронизирует только сам StringBuffer, выполняющий операцию, а не источник. 1