![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| nurfet |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 18.7.2008 Репутация: нет Всего: нет |
Помогите пожалуйста с решением задачи, есть условие:
Необходимо реализовать программу в ввиде одного исполняемого файла под Win32 (console или GUI) с использованием С/С++. Программа должна моделировать взаимодействие серверной части и некоторого множества клиентских частей (n <= 10). Серверная часть предназначена для обработки некоторых абстрактных транзакций, поступающих от множества клиентов. Серверная и клиентские процедуры должны исполняться в отдельных потоках. Система должна быть однонаправленной, т.е. клиенты отправляют данные и не ждут ответа. Данные, поступающие от клиентов должны помещаться в очередь с учетом их приоритета. Серверная часть должна извлекать данные из очереди и помещать в файл записи о них в текстовом формате. Записи в log-файле должны отражать: - время записи в log в системных тиках; - идентификатора клиента; - приоритет; - время формирования запроса в системных тиках.
|
|||
|
||||
| Леопольд |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 943 Регистрация: 17.6.2009 Репутация: 10 Всего: 13 |
Это сообщение отредактировал(а) Леопольд - 2.11.2011, 18:41 -------------------- вопросов больше чем ответов |
|||
|
||||
| DarthTon |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 7.2.2009 Репутация: нет Всего: 6 |
std::priority_queue тебе в помощь. Только еще придется определить Comparison-класс для выстраивания объектов tagTDATA в порядке очереди. Но вообще, я сам не так давно делал это задание и у меня где-то завалялась реализация. Это сообщение отредактировал(а) DarthTon - 9.11.2011, 20:08 |
|||
|
||||
| serjeka |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2012 Репутация: нет Всего: нет |
2DarthTon:
Доброго времени суток! Вы сказали что у Вас есть реализация данного задания! не сложно ли Вам будет его мне скинуть? |
|||
|
||||
| DarthTon |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 7.2.2009 Репутация: нет Всего: 6 |
В связи с просьбами, выкладываю свои исходники.
Это сообщение отредактировал(а) DarthTon - 22.6.2012, 21:02 Присоединённый файл ( Кол-во скачиваний: 78 )
QueueTest.rar 20,51 Kb |
|||
|
||||
| serjeka |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2012 Репутация: нет Всего: нет |
2 DarthTon
Мне выкидывает ошибку при сборке. 1> QueueTest.cpp 1>c:\documents and settings\администратор\рабочий стол\queuetest\queuetest\queuetest.cpp(194): error C2668: abs: неоднозначный вызов перегруженной функции 1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(547): может быть "long double abs(long double)" 1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(499): или "float abs(float)" 1> c:\program files\microsoft visual studio 10.0\vc\include\math.h(495): или "double abs(double)" 1> c:\program files\microsoft visual studio 10.0\vc\include\stdlib.h(471): или "__int64 abs(__int64)" 1> c:\program files\microsoft visual studio 10.0\vc\include\stdlib.h(467): или "long abs(long)" 1> c:\program files\microsoft visual studio 10.0\vc\include\stdlib.h(362): или "int abs(int)" 1> при попытке сопоставить список аргументов "(DWORD)" 1> 1>СБОЙ построения. вот участок кода: то что мне подчеркнуло я выделил... for(int i=0; i<255; i++) td.Data[i] = (char)rand()%255; td.dwTicks -= GetTickCount(); td.dwTicks = abs(td.dwTicks); ClientQueue.push(td); Есть идеи? Это сообщение отредактировал(а) serjeka - 26.6.2012, 12:39 |
|||
|
||||
| math64 |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2505 Регистрация: 12.4.2007 Репутация: 8 Всего: 72 |
Как я понял:
abs() к unsigned применять бессмысленно - потому для этого тип abs() и не перегружена. По-видимому, нужно исправить так:
Это сообщение отредактировал(а) math64 - 26.6.2012, 13:03 |
||||
|
|||||
| serjeka |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 21.6.2012 Репутация: нет Всего: нет |
2 math64
спасибо! сработало) |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |