Ru-MaNGOS

Вернуться   Ru-MaNGOS > Документация > Новичкам

Важная информация

Новичкам Информация для всех новичков, новичкам рекомендуется задавать свои вопросы здесь

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 20.11.2010, 18:12   #1
alien
Ученый
 
Регистрация: 17.05.2010
Сообщений: 148
Сказал(а) спасибо: 18
Поблагодарили 25 раз(а) в 22 сообщениях
alien На верном пути
По умолчанию Класс Thread в Мангосе.

Решил тут поизучать как организованны потоки в мангосе и как там используется ACE.... Но это так лирическое отступление.
Нашел файл Threading.h и Threading.cpp соответственно. Все понятно.
НО тут открываю к примеру WorldRunnable.h
вижу код
Код:
#ifndef __WORLDRUNNABLE_H
#define __WORLDRUNNABLE_H

/// Heartbeat thread for the World
class WorldRunnable : public ACE_Based::Runnable
{
    public:
        void run();
};
#endif
И не понимаю как компилятор понимает где определен ACE_Based::Runnable
Тоесть понятно что он определен в Threading.h. Но почему там нету инклуда и как компилятор узнает куда копать в данном случае.

Последний раз редактировалось alien; 21.11.2010 в 13:43.
alien вне форума   Ответить с цитированием
Старый 21.11.2010, 22:18   #2
Inn04ka
Дево4ка снайпер
 
Аватар для Inn04ka
 
Регистрация: 08.02.2010
Сообщений: 103
Сказал(а) спасибо: 46
Поблагодарили 25 раз(а) в 13 сообщениях
Записей в дневнике: 1
Inn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человек
Отправить сообщение для Inn04ka с помощью Skype™
По умолчанию

Мне кажеться,что компилятор присваивает путь,а они взаимосвязаны,поэтому при раскопке виден данный код
__________________
Inn04ka вне форума   Ответить с цитированием
Старый 21.11.2010, 22:20   #3
alien
Ученый
 
Регистрация: 17.05.2010
Сообщений: 148
Сказал(а) спасибо: 18
Поблагодарили 25 раз(а) в 22 сообщениях
alien На верном пути
По умолчанию

Цитата:
Мне кажеться,что компилятор присваивает путь,а они взаимосвязаны,поэтому при раскопке виден данный код
Я что-то ничего не понял из данного поста )
alien вне форума   Ответить с цитированием
Старый 22.11.2010, 00:22   #4
Inn04ka
Дево4ка снайпер
 
Аватар для Inn04ka
 
Регистрация: 08.02.2010
Сообщений: 103
Сказал(а) спасибо: 46
Поблагодарили 25 раз(а) в 13 сообщениях
Записей в дневнике: 1
Inn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человекInn04ka Реально хороший человек
Отправить сообщение для Inn04ka с помощью Skype™
По умолчанию

Цитата:
Сообщение от alien Посмотреть сообщение
Решил тут поизучать как организованны потоки в мангосе и как там используется ACE.... Но это так лирическое отступление.
Нашел файл Threading.h и Threading.cpp соответственно. Все понятно.
НО тут открываю к примеру WorldRunnable.h
вижу код
Код:
#ifndef __WORLDRUNNABLE_H
#define __WORLDRUNNABLE_H

/// Heartbeat thread for the World
class WorldRunnable : public ACE_Based::Runnable
{
    public:
        void run();
};
#endif
И не понимаю как компилятор понимает где определен ACE_Based::Runnable
Тоесть понятно что он определен в Threading.h. Но почему там нету инклуда и как компилятор узнает куда копать в данном случае.
Видно тут
class WorldRunnable : public ACE_Based::Runnable
{
public:
void run();
};
компилятор,скорее всего, оталкиваеться на путь паблик,т.к он связан с Threading.h. Это предположение,нет возможности проверить
__________________
Inn04ka вне форума   Ответить с цитированием
Старый 22.11.2010, 00:34   #5
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

.h включен только в 2 файла: mangosd\WorldRunnable.cpp и mangosd\Master.cpp
И там он включен после Common.h и Common.h включает его.

Конечно это не нормально и я поправил в [10771]. Спасибо за внимательность
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Старый 22.11.2010, 06:43   #6
alien
Ученый
 
Регистрация: 17.05.2010
Сообщений: 148
Сказал(а) спасибо: 18
Поблагодарили 25 раз(а) в 22 сообщениях
alien На верном пути
По умолчанию

Еще точно также в CliRunnable.h
alien вне форума   Ответить с цитированием
Старый 22.11.2010, 12:17   #7
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

Поправил в [10777]. Спасибо.
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Старый 26.11.2010, 23:22   #8
alien
Ученый
 
Регистрация: 17.05.2010
Сообщений: 148
Сказал(а) спасибо: 18
Поблагодарили 25 раз(а) в 22 сообщениях
alien На верном пути
По умолчанию

Продолжаем копание. )
\src\shared\Database\QueryResult.h
По идее перед самим QueryResult надо-бы
#include "Database/Field.h"
Или я неправ?
Также заодно там же к одному стилю наверно надо бы привести вот это
#if !defined(QUERYRESULT_H)
#define QUERYRESULT_H
alien вне форума   Ответить с цитированием
Старый 27.11.2010, 22:01   #9
Vladimir
MaNGOS Dev
 
Регистрация: 09.02.2010
Сообщений: 594
Сказал(а) спасибо: 315
Поблагодарили 438 раз(а) в 181 сообщениях
Vladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небесVladimir Как свет с небес
По умолчанию

В [10787] поправил. Спасибо
__________________
Так как устал объяснять знайте ICQ не пользуюсь
Vladimir вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[10865] Make DB code thread-safe. Original patch by Machiavelli and Kero99. newsbot CMaNGOS Commits 0 12.12.2010 11:41
Танкование на мангосе Lightunit Флудильня 6 30.05.2010 13:08


Текущее время: 00:21. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot