Немножко вне рутины...
Он живет до начала потока и после него.
-----
Если он не отдан потоку.
Я не уверен, что механизм сообщений удержит объект от освобождения. По крайней мере в обычных сообщения винды такой возможности нет.
Еще моментик, который, как мне кажется, ты упускаешь - используется пулл. Пулл не хранит ссылку на объект после его отдачи. Локальная переменная в методе - либо перезатрется, либо освободится с окончанием метода. Остается одна ссылка на объект - та, которая отдана потоку.
Проблема в том что она не доступна в комплитион-евенте.
Возьми третью часть того поста - там где один из первых врапится.. Потом сравни с тем что приведено в третьем блоке кода
Знаешь что это мне напоминает? "Пойди туду не знаю куда, возьми то не знаю что". То бишь ты то всё удерживаешь, а я не держу все нити в голове.
Ну там еще будет 3.а, 3.б, 4.а.б.ц.д.е... 556.а и т.п.На то она и разработка...![]()
ну не до такой же степени. Все главные требования должны быть известны ДО начала разработки, чтобы выработать правильный "концепт". Всё остальное может идти только в рамках модификации данного концепта. Ну или прийдется концепт менять, если новые хотелки настолько важны.
Еще моментик, который, как мне кажется, ты упускаешь
Скорее всего не имею представления, что там понаделал.
Никогда еще не возникало проблем с передачей данных из треда. Я передаю туда "Callback" интерфейс и через него получаю все что потребуется.
я не держу все нити в голове.
-----
Основная проблема в шаблонах - объем кода и сложность логики генерации.
Любое сокращение рассматриваемого объема кода или упрощение логики генерации - есть дело полезное и оправданное.
Потому код режется на более-менее понятные куски и пихается в разные шаблоны - до уровня понимабельности.
Когда все разобрано - надо собрать порожденный текст в кучку.
Так вот то что обсуждается - каким образом уменьшить затраты на собирание этого текста.
Затраты есть трудовые - количество времени на внесение изменений в существующие шаблоны.
И затраты есть технические - количество задействованных стреамов, памяти и общее время исполнения.
Когда ты, или кто еще, предлагаешь вариант имплементации Я больше всего думаю об том, насколько больше/меньше ручной работы потребуется в случае внесения изменений. Во вторую очередь - как оно отразится на ресурсах системы.
Вот тебе и было предложено оценить трудозатраты в предлагаемом тобою варианте. Т.е. вместо:
<#@ template language="C#" inherits="Templates.Sql.TSqlTemplateBase" #><#@ assembly name="System.Core" #><#@ import namespace="System.Linq" #><#@ import namespace="System.Text" #><#@ import namespace="System.Collections.Generic" #>WITH A AS ( <# GetResult("B2"); #> )
SELECT * FROM A
написать что-то вида:
<#@ template language="C#" inherits="Templates.Sql.TSqlTemplateBase" #><#@ assembly name="System.Core" #><#@ import namespace="System.Linq" #><#@ import namespace="System.Text" #><#@ import namespace="System.Collections.Generic" #><# writer.StoreData(typeof(B2)) // B2 tut, odnako, nedostupno - est' IB...#>WITH A AS ( <# string temp = b2.TransformText(); stream.Write(temp); #> ) <# // tut ne slozhno, no nado pojasnit' kuda budet pisat'sja... #>
SELECT * FROM A <#+ new StreamWriter stream { get { return base.SW; } } // :) #> // что будет на вyходе?
Ну да - глупостей Я там намеренно налепил немеряно... и мог бы добавить и еще...
Но это чисто для индикации того, что код шаблона нужен как можно более простым, с удалением всего что мешает понимать каким будет результат.
что код шаблона нужен как можно более простым
Что то смутно припоминаю где то должен был проект МуркаТ4, но там дело было в параметрах помнится.
Но и по генерации было море ограничений. И что то с шаблонами мне больше не хочется связываться. Я бы всё равно делал по другому.
Не забывай что в 1м примере был приведен чисто код без упоминания шаблонов.
но там дело было в параметрах помнится.
-----
Ну так параметры - это другая задача.
Она рассмотрена в достаточной мере, выработано какое-то решение и лежит ждет имплементации.
Именно по этому сегодняшняя схема вообще не упоминает параметры.
И что то с шаблонами мне больше не хочется связываться.
был приведен чисто код без упоминания шаблонов.
-----
Ты их просто не умеешь готовить.
Собственно, чтобы не смущать всех шаблонами Я их и упростил до объекта с методом.
Грубо, но достаточно точно.
Я бы всё равно делал по другому.
-----
Ну, допустим, ты сделаешь идеальный, по твоему мнению, вариант.
Ну, допустим, Я посмотрю на твой вариант, восхищусь им до невозможности.
Ну, допустим, еще человек 5-10-15 будут в восхищении...
Вопрос - каким чудом можно будет обучить хотя бы 100-200 тыс прогеров пользоваться именно твоим вариантом?
Ну а если не получится - зачем пыхтеть и делать сервис для их загрузки/исполнения? ![]()
Смысл в том, чтобы получить результат используя простые и стандартные средства - тогда можно найти пользователей и сотворить гешефт.
Вопрос - каким чудом можно будет обучить хотя бы 100-200 тыс прогеров пользоваться именно твоим вариантом?
А каким чудом ты это получишь для твоего варианта?
Конечно я буду делать под то насколько знаю твою систему, а это где то возле -273 °C ![]()
То бишь прийдется многое воображать как оно может быть.
А так, мне достачно чтобы системой могли пользоваться люди заплатившие за это деньги. И там счёт идет явно не на тысячи.
Чтобы было понятно у не чисто софтверные проекты. Народ покупает железяку, а она без софта так и останется железякой.
По моему мнению, задачки где то по "архитектуре ПО", вполне допускаю, что это вас абсолютно не интересует. А задачками будет типа "сделать прогу выводящую свой код".Может Вы тогда приведёте пример задачи по Вашему?
Так Вы решили, что треп в этом топике - это "задачки где-то по архитектуре ПО"? Т.е. Вы - архитектор? Почему тогда уж сразу не Наполеон...
что треп в этом топике
Я вообще то думал что Вы имеете в виду совсем другой топик. Муркины проблемы не так просто классифицировать. Но в любом случае это задачки, хотя их и нужно довести до нормальной постановки.
Почему тогда уж сразу не Наполеон
Давайте жить дружно ![]()
Муркины проблемы не так просто классифицировать. Но в любом случае это задачки, хотя их и нужно довести до нормальной постановки.
То-то я и вижу, Вы с ним до хрипоты спорите, не можете определиться: кража или ограбление : )
PS. Интересно, кем вы оба были до революции...
Интересно, кем вы оба были до революции...
Увы похвасть нечем. Ананасов и рябчиковъ не жралисъ, за бананами на деревья не лазили. Хотя вот мурка вроде негром была.
Вы с ним до хрипоты спорите
Это со стороны видимо так наблюдается.
Помню, у нашего начальника волосы дыбом вставали, когда он случайно забегал в комнату во время обсуждения с коллегой как будем реализовывать тут или иную часть.
Жаркие были споры, но именно после них и рождалось более лучшее решение.
NB: влез исключительно от удивления сравнению архитектора с наполеоном.
Так Вы решили, что треп в этом топике - это "задачки где-то по архитектуре ПО"?
Может таковым оказаться. Если в конце не выяснится что ТС хотел узнать совсем другое, а все что он писал это так, от скуки.
Т.е. Вы - архитектор? Почему тогда уж сразу не Наполеон...
А откуда такой пиетет перед Software-архитекторами? Обычная работа. Или вы Enterprise-архитектора имели в виду? Но они не занимаются архитектурой ПО...
Чтобы было немного ясно о чём спор (об архитектуре)
Начало было здесь
https://foren.germany.ru/showmessage.pl?Number=31946268&Bo...
"как и назвать использование DLL'ов "плигином".- Что отсылает совсем к другому топику (уже моему). Вот относительно него я и отвечал.
Ну а перехода на личности я стараюсь избегать, у каждого своя точка зрения и если она не совпадет с твоей собственной, то это не должно означать что другой "дурак".
Иногда можно просто иметь в виду совсем другое, а иногда представлять проблему в своем видении, ну и много чего другого.
А откуда такой пиетет перед Software-архитекторами? Обычная работа. Или вы Enterprise-архитектора имели в виду? Но они не занимаются архитектурой ПО...
Ну вот и Йентерпрайз-архитектор к нам соизволили. В палате становится тесновато : (
Но там ясно написано: Мурр (он!)
А что это для вас это имеет какой то большой смысл в данном случае? Что на этом нужно заострять внимание или просто больше не к чему придраться?
В предложении было использовано имя Мурка, скажем так, по поэтическим соображениям
Может еще и все слова нужно правильно писать?
Что вы! Я такое же быдло как и вы! (с)
Простите, хама трамвайного обыкновенного в вас сразу не распознал.

