Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
cathrin241
3 / 3 / 0
Регистрация: 24.04.2011
Сообщений: 84
#1

Аргументы для семафоров - C#

20.11.2011, 16:18. Просмотров 1501. Ответов 10
Метки нет (Все метки)

у меня есть две нити,которые передают разные значения в метод.
в этом методе надо использовать семафор,так,чтобы эти нити выполнялись поочередно.сначала полностью первая,и только потом полностью вторая.

какие аргументы передавать семафору?

sem = new Semaphore(?,?);
всё испробовала,но нити переплетаются и выполняются не так как надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2011, 16:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Аргументы для семафоров (C#):

.NET 3.x Неверные аргументы для String.Join на .Net 3.5 - C#
Ошибка: Наиболее подходящий перегруженный метод для "string.Join(string, string)" имеет несколько недопустимых аргументов. var random =...

Аргументы для метода WriteTo из LINQ to XML - C#
Добрый день! Подскажите пожалуйста.Нужно записать вместо "..." - новый аргумент,как правильно сделать? Возможно глупый вопрос - извините...

Ошибка: аргументы типа для метода не могут определиться по использованию - C#
...{... var CuttedList = new List<Array>(); double array = CreateRectangularArray(CuttedList);...} private T...

Использование alglib для решения СЛАУ: Недопустимые аргументы в функции - C#
В программе необходимо решить слу, решил воспользоваться alglib но не пойму как, вот кусок моего кода: double A = new double.mark.Count];...

Аргументы метода - C#
Господа, помогите, изучаю шилдта и наткнулся на несколько оченб странных примеров. Вот один из них using System; class ChkNum { ...

Передать аргументы в событие - C#
Сабж, что надо передавать там где в коде вопросительные знаки? private void exit_ToolStripMenuItem_Click(object sender, EventArgs e) ...

10
kolorotur
Эксперт .NET
9109 / 7615 / 1210
Регистрация: 17.09.2011
Сообщений: 13,150
20.11.2011, 18:18 #2
Порядок очередности обязателен? Если сначала вторая, а потом первая - это плохо?
0
cathrin241
3 / 3 / 0
Регистрация: 24.04.2011
Сообщений: 84
20.11.2011, 18:54  [ТС] #3
нет,думаю так тоже сойдет.
просто нити у меня в форе..обе.
тоесть дожно быть например так: 0,1,2,3.....
и далее опять 0,1,2,3..

а выводит в рандомном порядке : 0,3,3,2,1,2 и тд
0
m0nax
1162 / 863 / 56
Регистрация: 12.01.2010
Сообщений: 1,820
Завершенные тесты: 3
20.11.2011, 19:51 #4
какой смысл во втором потоке(нити по твоему) если выполнение должно быть последовательным?
подумай об этом какнить на досуге...
0
kolorotur
Эксперт .NET
9109 / 7615 / 1210
Регистрация: 17.09.2011
Сообщений: 13,150
20.11.2011, 23:48 #5
cathrin241, можете подробнее описать вашу задачу? Мне кажется, семафор здесь не совсем то, что нужно, так как он просто допускает определенное количество потоков к общему ресурсу.
0
cathrin241
3 / 3 / 0
Регистрация: 24.04.2011
Сообщений: 84
22.11.2011, 16:13  [ТС] #6
у меня задание такое.по лабе.синхронизировать нити через семафоры.через Lock и тп я сделала,а с семафорами трабла возникла.
использовать нужно как минимум две нити.их значение одинаковое(я взяла массив значений,который высчитывается по определенной формуле),потому что это уже суть другого задания,так нужно.(считать разные нити разными способами,но по одной формуле, и на выходе доказать тем самым что они одинаковые)
m0nax,спешл для вас
0
kolorotur
Эксперт .NET
9109 / 7615 / 1210
Регистрация: 17.09.2011
Сообщений: 13,150
22.11.2011, 18:18 #7
Подытожу: вам надо, чтобы в двух потоках выполнялись определенные вычисления над элементами массива и чтобы каждый поток после окончания вычислений над своим элементом ждал другой поток, и только потом переходил к вычислению следующего элемента.
Правильно понял?
0
cathrin241
3 / 3 / 0
Регистрация: 24.04.2011
Сообщений: 84
22.11.2011, 21:41  [ТС] #8
нет,сначала в первом потоке должны произвестись все вычисения,а только потом во втором(ну или наоброт,не суть,потому что они у меня одинаковые)
я не понимаю,прочитала что первый аргумент это сколько может входить потоков одновременно,а второй-максимальное значение.как то так...
0
kolorotur
Эксперт .NET
9109 / 7615 / 1210
Регистрация: 17.09.2011
Сообщений: 13,150
22.11.2011, 21:48 #9
Ну, честно сказать, в таком случае здесь действительно потоки ни к чему.
Но раз такое задание..

Первый аргумент - сколько потоков может начать работу сразу, второй аргумент - максимальное количество одновременных обращений.
В вашем случае аргументы должны быть 1 и 1.
1
cathrin241
3 / 3 / 0
Регистрация: 24.04.2011
Сообщений: 84
22.11.2011, 22:00  [ТС] #10
пробовала,ошибка вылетала)
спасибо,я уже немного подругому организовала)
0
kolorotur
Эксперт .NET
9109 / 7615 / 1210
Регистрация: 17.09.2011
Сообщений: 13,150
22.11.2011, 22:01 #11
Что за ошибка?
0
22.11.2011, 22:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2011, 22:01
Привет! Вот еще темы с ответами:

Аргументы к написанному программистом классу - C#
Это кусок из уже рабочего кода. Есть класс ClientConnection (класс написан программистом) В коде создаётся объект этого класса. ...

Main() и аргументы командной строки - C#
Создадим консольное приложение using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace...

Консольное приложение принимает аргументы /a /b /c - C#
Извините за ламерский вопрос, меня мучает один вопрос если Я пишу приложение где принимает несколько аргументов или 1н. Как это описать Ну...

Аргументы командной строки на русском - C#
Всем привет. Запускаю программу через её файл. Если файл на русском языке, то программа просто не запускается, если же кириллицы нет, то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru