Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Технические вопросы по RusHub'у _ Многопоточность в русхабе

Автор: Setuper 25.12.2012, 14:44

На данный момент в trunk ветке svn доступна версия 2.4.0[beta], в которой реализована многопоточная работа русхаба. Многопоточность значительно увеличивает скорость работы хаба. По умолчанию она отключена. Для включения нужно определить макрос USE_DCSERVER_THREADS.
Сделать это можно несколькими способами (в зависимости от способа сборки хаба).

Вариант 1 (не зависит от типа сборки): подправить исходники, а именно файл DcServer.cpp, добавив после инклудов строку:

Код
#define USE_DCSERVER_THREADS


Вариант 2 (сборка при помощи makefile): подправить makefile
Код
$(CURDIR)/DcServer.o: $(CURDIR)/DcServer.cpp ..........
    $(CXX) $(CXXFLAGS) -DUSE_DCSERVER_THREADS $(INCLUDE) -c -o $@ $<


Вариант 3 (сборка при помощи autotools): после выполнения reconf дописать в файл config.h строку:
Код
#define USE_DCSERVER_THREADS



Многопоточная работа находится на стадии тестирования, поэтому не исключены дедлоки и другие ошибки.

P.S. В Lua многопоточности пока нету.

Автор: MaxFox 25.12.2012, 15:14

Цитата(Setuper @ 25.12.2012, 15:44) *
На данный момент в trunk ветке svn доступна версия 2.4.0[beta], в которой реализована многопоточная работа русхаба.
много букоф
Многопоточность значительно увеличивает скорость работы хаба. По умолчанию она отключена. Для включения нужно определить макрос USE_DCSERVER_THREADS.
Сделать это можно несколькими способами (в зависимости от способа сборки хаба).

Вариант 1 (не зависит от типа сборки): подправить исходники, а именно файл DcServer.cpp, добавив после инклудов строку:
Код
#define USE_DCSERVER_THREADS


Вариант 2 (сборка при помощи makefile): подправить makefile
Код
$(CURDIR)/DcServer.o: $(CURDIR)/DcServer.cpp ..........
    $(CXX) $(CXXFLAGS) -DUSE_DCSERVER_THREADS $(INCLUDE) -c -o $@ $<


Вариант 3 (сборка при помощи autotools): после выполнения reconf дописать в файл config.h строку:
Код
#define USE_DCSERVER_THREADS



Многопоточная работа находится на стадии тестирования, поэтому не исключены дедлоки и другие ошибки.

P.S. В Lua многопоточности пока нету.

круто... молодец, сделал то, что другие не смогли...