Цитата:
Сообщение от Pavia
Если объекты изолированы друг от друга т.е они не взаимодействуют то они будут потоко-безопасными.
|
Изолировано что от чего? Если ничего ни с чем не взаимодействует, то что же программа делает?
Вот это же вроде не нарушает упомянутый закон Деметра, но не потокобезопасно:
Код:
public class Account {
private decimal balance = 500.00m;
public decimal GetBalance() {
return balance;
}
public void Withdraw(decimal amount) {
if (balance < amount)
...;
balance -= amount;
}
}
...
class Foo {
var acc = new Account();
void DoStuff() {
RunThread(acc);
RunThread(acc);
}
void RunThread(Account acc) {
var thread = new Thread({
while (true) {
acc.Withdraw(1);
}
});
thread.run();
}
}