Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];

Вниз

Адептам "одноэсины" ..   Найти похожие ветки 

 
Digitman ©   (2005-01-28 17:52) [0]

Отправная точка для восклицаний - платформа "1C:Предприятие", 21-й SQL-релиз ..

и какого же хрена переменная, объявленная в модуле формы  (а неважно какая - локальная для процедуры или глобальная для модуля формы), в ран-тайм в нек.момент времени принимающая значение равное ссылке на диспинтерфейс некоего сервера автоматизации, при "умирании" не обрабатывается долбаным 1С-интерпретером должным образом ?

надеюсь, для истинных "дельфистов" термин и механизм "умирания" олей-вариантной-переменной понятен от и до ..

для тех кто не "въехал" :
- объявите-ка ЛЮБУЮ переменную X в ЛЮБОМ модуле формы ЛЮБОЙ конфигурации,
- в ран-тайм по некоему произвольному условию обеспечьте передачу упр-я некоей процедуре, которая, скажем, выполнит строчку X = CreateObject("Excel.Application")
- пусть юзер после сего закроет И форму И следом же сеанс работы с клиентом 1С:Предприятие (по своей инициативе ! штатно !)

жмаем три веселых кнопки, и что видим ?
Ёхель как процесс эдак вееесело висит с списке процессов диспетчера задач.

повторим всю эту ботву N раз - увиди N Ёхелей в списке процессов

весело ?

мне  - очень даже.


 
Petr V. Abramov ©   (2005-01-28 17:55) [1]

Эх... В пятницный вечер - о грустном...
 Уж лучше про кур :)))))


 
старый маразматикЪ   (2005-01-28 17:59) [2]

а момент закрытия формы можно поймать, чтобы ручками икса убить?

зы.с 1ЦЭ не работал


 
Digitman ©   (2005-01-28 18:01) [3]

не..

о "веселом" хотелось бы услышать от потенциальных адептов 8-ки ..
хотелось бы уснуть спокойно, причмокивая впредвкушении нечто чего-то, гарантирующего ГРАМОТНУЮ АВТОдеиницилизацию олей-переменных в 8-шной платформе...
чел же жив надеждой, однако)


 
sniknik ©   (2005-01-28 18:01) [4]

> X = CreateObject("Excel.Application")
а там вроде надо X = 0 на выходе выполнять.


 
Digitman ©   (2005-01-28 18:03) [5]


> старый маразматикЪ   (28.01.05 17:59) [2]
> а момент закрытия формы можно поймать, чтобы ручками икса
> убить?
>
> зы.с 1ЦЭ не работал


"Боня, ты - тупой" (С) КВН

таки попробуй въехать в СУТЬ сабжа.
может еще и не все потеряно для тебя.


 
sniknik ©   (2005-01-28 18:04) [6]

(не "адепт", но наши одноэсовцы так делают)


 
Digitman ©   (2005-01-28 18:05) [7]


> sniknik ©   (28.01.05 18:01) [4]
> а там вроде


это ГДЕ Ж такое "вроде" в док-ции к этой одноэсной срани ФИГУРИРУЕТ ?

ткни меня носом, пож.   ...

а не ДЕБИЛЬНО ли сие решение разработчика ?


 
Digitman ©   (2005-01-28 18:08) [8]


> sniknik ©   (28.01.05 18:04) [6]
> (не "адепт", но наши одноэсовцы так делают)


правильно делают)
ибо они просекли ДЕБИЛЬНОСТЬ логики разработчика платформы .. адеваться некуда - нужно сидеть день и ночь и выискивать все места в коде модуля, где сч--к ссылок на интерф.объект должен быть обнулен)

бред !
бред собачий, скажу тебе !


 
Digitman ©   (2005-01-28 18:16) [9]

1С-модуль есть такой же объект как и все прочие модули.

как только все ссылки на этот объект перестают существовать (например, уничтожены все объекты-формы, код которых фигурирует в этом связанном модуле формы), объект-модуль должен "умереть"
перед "смертью" сей модуль ОБЯЗАН проверить на содержимое ВСЕ переменные уровня модуля (не "экстерн", разумеется), и если в хоть одной из них фигурирует интерф.ссылка, ее сч-к д.б. декрементирован в ОБЯЗАТЕЛЬНОМ порядке !


 
GRAND25 ©   (2005-01-28 18:17) [10]

1C must die!!!


 
Digitman ©   (2005-01-28 18:21) [11]

м.б., описал я все это чуть сумбурно, но факт есть факт)

в ран-тайм создай единожды в коде одноэсной конфы экз-р сервера автом-ции, закрой одноэсный сеанс БЕЗ явного уничтожения тобой в конфе ранее созданного тобой этого экз-ра -  и ты получишь геморрой в виде торчащего бесхозного экз-ра созхданного тобой сервера автом-ции.


 
марсианин ©   (2005-01-28 18:32) [12]

2Digitman ©

спокойно! спойкойно, все хорошо :)
кривость 1С - уже стала придчей в языцах. но работают же люди на ней. приспособились, выходит.. и даже деньги получают. и не малые.
кривость ПО - это еще самая страшная беда


 
Digitman ©   (2005-01-28 18:48) [13]


> марсианин ©   (28.01.05 18:32) [12]


давай уже без "спокойно" и прочих никчемных комментариев)
вероятно, я не оч конкретно изложил вопрос, но меня интересует опыт адептов одноэсины, столкнувшихся с этой байдой в 7-ке и от радости выпрыгивающих ноне из штанов при общении с 8-кой) ..

с удовлетворением приму аргументы адептов 8-ки в пользу того что я дурак и в 8-ке эта беда отсутствует ...


 
Verg ©   (2005-01-28 18:49) [14]


> БЕЗ явного уничтожения тобой в конфе ранее созданного тобой
> этого экз-ра -  и ты получишь геморрой в виде торчащего
> бесхозного экз-ра созхданного тобой сервера автом-ции.


Нихрена не понимаю в этих самых "автомотизациях", но если выйти из процедуры, ЯВНО вызвавшей Create, без ЯВНОГО Free, наблюдаться будет тоже ЯВНО бесхозный блок памяти.

И чему тут удивляться?

Механизм "пределов видимости" в этой автоматизации кто на себя берет?
Кто должен подчищать все что было создано при открытии "сеанса", но не освобожено при его закрытии? Кто отвечает за "сеанс" и ресурсы им потребленные?


 
Digitman ©   (2005-01-28 18:55) [15]


> Verg ©   (28.01.05 18:49) [14]


Андрей, а ты при программинге в Делфи шибко заботишься об ЯВНОМ освобождении интерф.объектов, ссылки на которые ты разместил в неких лок.переменных неких врем.процедур ? Или везде в своих процедурах лупишь одну и ту же мартышкину последовательность

var MyObj: ISomeObj; //лок.перем-я п/программы
..
MyObj := SomeClassInstCreate(..) as ISomeObj;
try
.. чего-то там ..
finally
 MyObj := nil;
end;


 
Digitman ©   (2005-01-28 18:58) [16]


> Механизм "пределов видимости" в этой автоматизации кто на
> себя берет?


у нас с тобой - Делфи-компилятор.
у разработчиков однеоэсины - одноэсный интерпретатор.

рискни повторить этот эксперимент в любом VBA-интерпретере от MS Office - получишь вполне корректный рез-т.

а в интерпреторе долбаной одноэсины ты тот же самый корректный рез-т при тех же в точности своих прогр.действиях фих получишь)


 
старый маразматикЪ   (2005-01-28 18:59) [17]


> Digitman ©   (28.01.05 18:03) [5]

а ты - грубиян. во. по мне хоть 1ЦЭ, хоть 8-ЦЭ - все равно. в дельфях-то я понимаю, как делать, на закрытии формы оле-объект типа ехел убиваю, а тута - хрен его знает, как этот зверь работает...

кстати, ежели таким макаром, как ты делаешь, в дельфях пользовать ехел, и ручками его не убивать, то он так и останется висеть в памяти при выходе из программы, по крайней мере в четверке. возражения есть?


 
Verg ©   (2005-01-28 19:05) [18]


> Digitman ©   (28.01.05 18:55) [15]


Ты эта, не злись, пожалуйста...

Я же сказал - мне вообще непонятны внеязоковые принципы освобождения объектов именно для интерф. объектов и тем самым отличающее их от объектов вообще данного языка, при выходе из контекста какого-то потока (кстати какго?) или из пределов видимости. Т.е. что естесственно для, например, C++, то я не очень понимаю как работает для Object Pascal.

и почему "мартышкину"? Я пишу Free, а не ":=nil", раз уж был ***Create***... Какой же :=nil, раз был Create (new)- на каждый Create надо ответить именно Free (dispose, destroy)..

Нелогично?


 
wicked ©   (2005-01-28 19:10) [19]

(скорее оффтопик, чем по теме)
эта... смарт-поинтеры рулят... :)

ЗЫ а если кому интересно, можно развить смарт-поинтеры (и гарбадж-коллекторы) в интересную тему... это уже вполне серьезно...


 
GRAND25 ©   (2005-01-30 01:06) [20]

Наивно ожидать чего-то хорошего от конструктора "Лего"...

Если 1С считать языком программирования или же платформой для разработки и предъявлять к ней требования как к нормальному языку или платформе, то сабжевое непотребство никакой критики тогда не выдержит. Будем проще и снисходительнее: на своей ступени 1С-ина рулит однозначно! Но хотеть от нее, чтобы она аки Делфи работала корректно в "тонких" случаях, не стоит. Нервы дороже...



Страницы: 1 вся ветка

Форум: "Потрепаться";
Текущий архив: 2005.02.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.041 c
3-1106599767
Urvin
2005-01-24 23:49
2005.02.20
Фаербирд


4-1104843979
Qware
2005-01-04 16:06
2005.02.20
Серийный номер мат. платы


1-1107768634
Игорь нтк
2005-02-07 12:30
2005.02.20
Выделенная область


9-1064947484
Ландграф Павел
2003-09-30 22:44
2005.02.20
Игра Sorcerer`s Doll


9-1097681121
Colt1978
2004-10-13 19:25
2005.02.20
Кто и как пакует ресурсы ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский