Synchronizace koordinuje přístup vláken ke sdílenému měnitelному stavu tak, aby se operace nebezpečně nepromíchávaly, čímž se zabraňuje race conditions. Java nabízí několik mechanismů, od vestavěného klíčového slova synchronized až po explicitní zámky a lock-free atomické operace.
synchronized — vzájemné vyloučení (intrinsické zámky)
{
balance;
{
(balance >= amount) {
balance -= amount;
}
}
{
() {
balance += amount;
}
}
}
