powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / lock в 2 методах
9 сообщений из 9, страница 1 из 1
lock в 2 методах
    #39081888
FatherSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно сделать чтобы в один момент времени только один поток был d каком-то одном методе (собсвенно добавление удаление в контейнер чтобы у него там чтото не сломалось)

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
object obj = new object();

void add(string elem)
{
lock(obj)
{
container.add(elem);
}
}

void del(string elem)
{
lock(obj)
{
container.del(elem);
}

}



если кто-то вошел в add и кто-то пытается войти в del то он остановится пока не закончится add.
...
Рейтинг: 0 / 0
lock в 2 методах
    #39081952
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Молодец
...
Рейтинг: 0 / 0
lock в 2 методах
    #39082053
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PallarisМолодецА про пирожок с полки?
...
Рейтинг: 0 / 0
lock в 2 методах
    #39082145
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на сколько я понимаю, это какая то коллекция, по этому желательно еще на перечисление этой коллекции, чтоб в момент когда идет итерация коллекции другие потоки не могли добавлять или удалять из неё элементы, иначе это приведет к исключению
...
Рейтинг: 0 / 0
lock в 2 методах
    #39082217
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesна сколько я понимаю, это какая то коллекция, по этому желательно еще на перечисление этой коллекции, чтоб в момент когда идет итерация коллекции другие потоки не могли добавлять или удалять из неё элементы, иначе это приведет к исключению
Хм. А как на перечисление сделать? :)
...
Рейтинг: 0 / 0
lock в 2 методах
    #39082894
FatherSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesна сколько я понимаю, это какая то коллекция, по этому желательно еще на перечисление этой коллекции, чтоб в момент когда идет итерация коллекции другие потоки не могли добавлять или удалять из неё элементы, иначе это приведет к исключению
это пожалуй да
...
Рейтинг: 0 / 0
lock в 2 методах
    #39084755
zz118
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
lock в 2 методах
    #39085745
FatherSql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zz118 https://msdn.microsoft.com/ru-ru/library/system.threading.readerwriterlockslim(v=vs.110).aspx
если не сложно то в чем преимущества перед lock? (большущая там статья долго вникать)
...
Рейтинг: 0 / 0
lock в 2 методах
    #39086350
zz118
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FatherSqlzz118 https://msdn.microsoft.com/ru-ru/library/system.threading.readerwriterlockslim(v=vs.110).aspx
если не сложно то в чем преимущества перед lock? (большущая там статья долго вникать)

Первая же ссылка дает очень годную статью:
http://www.codeproject.com/Articles/101806/ReaderWriterSlimLock-Conquering-Mismatched-Enter-a
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / lock в 2 методах
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]