![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Может, и бред, но я всё же хочу знать:
Я ОЧЕНЬ сократил модуль ScktComp, оставив там только TClientSocket и всё необходимое. Довёл его до наследника TComponent, убрав нафик всех промежуточных (с правильным переносом всех параметров и тд). Работоспособность идентична оригиналу, но я маленько урезал uses, вырвав из них только необходимое. Передо мной "делема": стоит ли урезать его дальше, исключая модуль SysUtils? Этот тяжеловес, согласен, сильно облегчит конечный модуль, но придётся очень долго всё переформировывать... То, что есть сейчас, приложил. |
|
#2
|
||||
|
||||
|
Сразу скажу смысл всей этой "колбасы": мне нужен ЛЁГКИЙ и ШУСТРЫЙ модуль-сокетклиент. А, как известно, в Delphi 2 самых распространённых тяжеловеса - Forms и SysUtils.
|
|
#3
|
||||
|
||||
|
Как ни парадоксально, я это сделал! Может, криво, "чисто по русски", зато полностью работает, не включает никаких тяжеловесов и, ИМХО, стал даже несколько шустрее.
|
|
#4
|
||||
|
||||
|
Продолжаю линейку "анти-uses-SysUtils"ов, выкладываю модуль uThreadClass... Включает в себя всё необходимое для создания многопоточного приложения (TThread). Собственно, разница в консольном приложении - модуль Classes - 130Кб, uThreadClass - 51Кб.
|
|
#5
|
||||
|
||||
|
Осталось только по возможности код на ассемлерные вставки заменить и можно будет на Спектруме запускать.
![]() Чего ради положен такой сизифов труд? На фоне сегодняшней производительности ПК и объемов жестяков, оперативки и 5 меговый файл не тормозит. Хотя честно скажу, самому нравится компактный код. |
|
#6
|
|||
|
|||
|
Страдалецъ, вот когда у тебя на сервере будет куча прикладов, каждый из которых жрет по 2-3 лишних метра, тогда поймешь зачем это нужно.
|
|
#7
|
||||
|
||||
|
Ну тогда, лучше не плющить каждую по отдельности прикладу, а собрать их в одну. Компактнее в разы выйдет.
|
|
#8
|
|||
|
|||
|
Не совсем. Да и по другим причинам может не получиться. Например, если твое приложение выполняется в каждой сессии клиента на терминал-сервере. У тебя все равно будет стролько копий процесса, сколько пользователей. Вот тут размер каждой копии и начинает играть роль.
|
|
#9
|
||||
|
||||
|
Вот-вот, Imikle прав. Ведь на это дело меня сподвигло написание серверного приложения... А там надо будет запускать несколько (возможно, ДЕСЯТКИ) экземпляров... а сервер не очень мощный... Потому и изгаляюсь, как могу, ради каждого байта памяти...
Последний раз редактировалось PhoeniX, 04.09.2009 в 17:24. |