|
-21 / 29 / 2
Регистрация: 17.03.2018
Сообщений: 778
|
|||||||||||
Singletone для Class library29.10.2019, 16:42. Показов 4858. Ответов 98
Метки нет (Все метки)
приветствую всех,
Каждый раз в каждом class где я работаю с class library я создаю объект. Говорят это не есть хорошо. Например:
Вопрос, как сделать singleton из класса Frame? спасибо!
0
|
|||||||||||
| 29.10.2019, 16:42 | |
|
Ответы с готовыми решениями:
98
Intellisense и autocompletion в библиотеках класса (Class Library) Работа с DirectX: Output Type of Class Library Как узнать путь к ресурсу сборки Class Library? |
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 08:56 | |
|
0
|
|
|
Модератор
|
||
| 17.02.2020, 08:58 | ||
|
Что за сервер он не знает. Соединение идёт по сети с VPN. Ему просто дали Api и правила его использования. Одно из правил соединение должно быть одно на сеанс работы приложения. Наверное, это не соединение с Базой, а соединение VPN. А внутри него Api уже формирует одноразовые соединения с самой Базой.
0
|
||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
||
| 17.02.2020, 09:01 | ||
|
Не по теме: Очень интересно, что когда я его попросил объяснить зачем ему то, что он просит, он психанул, но вам в личку всё рассказал. Странный подход к решению проблем.
0
|
||
|
10 / 10 / 1
Регистрация: 10.09.2019
Сообщений: 232
|
|
| 17.02.2020, 09:04 | |
|
Да у нас кажись такая же тема. Что-то до боли знакомое. Приезжий кодер тоже возмущался пока ему дважды не ткнули носом. Сдедовать инструкциям и глупых вопросов не задавать.
Все правильно делает. Я бы помог, но заглянуть не могу. Доступа нет.
0
|
|
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 09:16 | |
|
кружок-ДДТ, не более одного подключения одновременно и держать одно подключение постоянно - разные вещи, не находите? Ни то, ни другое не противоречит тому, что просили, но второе - хреновая практика с нулевым профитом, что для клиента, что для сервера.
Добавлено через 4 минуты Подключение, при закрытии, отправляется в пул, а не разрывается физически, т.е. связь с СУБД остаётся. Когда клиенту понадобится снова подключиться, ADO.NET вернёт именно это подключение. Второй момент: ADO.NET открывает сразу несколько подключений (для пущей производительности параллельных запросов). Если ЭТО СУБД пережёвывает, то значит требование иметь только одно подлключение - бред, ибо уже нарушается самой ADO.NET и остаётся незамеченным.
0
|
|
|
Модератор
|
||
| 17.02.2020, 09:23 | ||
|
Добавлено через 3 минуты Создавались когда ещё и ADO не было, наверное. Работают с SQL запросами напрямую, вроде.
0
|
||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 09:31 | |
|
Элд Хасп, все известные мне реляционные СУБД связываются с .NET через ADO.NET. Ок, даже если там свой какой-то кастомный интерфейс, не основанный на ADO.NET, то какие проблемы свой пул сделать, а не шарить одно постоянно удерживаемое подключение?
0
|
|
|
Модератор
|
||
| 17.02.2020, 09:45 | ||
|
Дали Api и юзай его. Шаг влево, шаг вправо - расстрел. И подключение это, скорее всего, не подключение к БД, а создание сеанса VPN. Сеанс создаётся один на всё время работы приложения. Больших подробностей не знаю. И ТС тоже не знает. Эму просто дали задание и условия его выполнения.
0
|
||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 09:46 | |
|
Ой, всё)
0
|
|
|
-21 / 29 / 2
Регистрация: 17.03.2018
Сообщений: 778
|
||||||||||||||||
| 17.02.2020, 17:59 [ТС] | ||||||||||||||||
|
Элд Хасп,
Цель всего этого: хотя бы как-то структурировать приложение при этом соблюдая правило одного openDB() и CloseDB() на один сеанс работы App. Иначе валится каша. Хотя нас предупреждали. Юзается интенсивно больше года, свалено все в один класс, в декабре кое-что нужно было добавить из-за свалки убил день на чепуху. Показано с мин. кода и мин количеством VM. Чисто для понимания. Cоздан public class MainConnection где в нем:
В VMxxx следующее,
В VMyyy следующее,
Сегодня затестил на болванке, вроде бы норм. Вопрос, если заметили поля класса MainConnection в разных VM одинаковые. По фэншую должны быть разными или сделать private? Или?
0
|
||||||||||||||||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
||
| 17.02.2020, 18:05 | ||
|
0
|
||
|
-21 / 29 / 2
Регистрация: 17.03.2018
Сообщений: 778
|
||
| 17.02.2020, 18:11 [ТС] | ||
|
б) есть вариант с кнопками Соединиться/Разъединиться. App не закроется пока не выполнят разъединение.
0
|
||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|||
| 17.02.2020, 18:23 | |||
|
База данных-то какая используется?
0
|
|||
|
10 / 10 / 1
Регистрация: 10.09.2019
Сообщений: 232
|
|
| 17.02.2020, 18:38 | |
|
0
|
|
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 18:44 | |
|
кружок-ДДТ, судя по примеру выше, в VM'ках и идёт создание MainConnection с сохранением в приватном поле.
0
|
|
|
10 / 10 / 1
Регистрация: 10.09.2019
Сообщений: 232
|
||
| 17.02.2020, 18:52 | ||
|
0
|
||
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
|
| 17.02.2020, 18:56 | |
|
кружок-ДДТ, да, только VM'ок у ТС-а больше одной, судя по ХХХ в названии. И в каждой нужен MainConnection. Оттуда и вопрос у ТС-а, как расшарить это дело. И если в каждой VM будет создаваться свой экземпляр этого класса, который закрывает подключение в финализаторе, то будет совсем не то, что ТС представляет.
0
|
|
|
10 / 10 / 1
Регистрация: 10.09.2019
Сообщений: 232
|
|
| 17.02.2020, 19:16 | |
|
0
|
|
|
14345 / 9448 / 1360
Регистрация: 21.01.2016
Сообщений: 35,622
|
||
| 18.02.2020, 07:39 | ||
|
кружок-ДДТ, это грозит тем, что новое подключение откроется при всё ещё не закрытом старом. Что прямо нарушает требование иметь одновременно ровно одно подключение.
MainConnection и при этом не нарушать требование.
0
|
||
| 18.02.2020, 07:39 | |
|
Помогаю со студенческими работами здесь
99
Как искусственно вызвать exception в Class Library (пока пустой) Вопрос из теста: A project with an Output Type of Class Library cannot be started directly Есть Class library (с работающим кодом) как найти то, что запускает этот код?
Нужно составить регулярное выражение для поиска <div class="market_row_name"> и <div class="market_row_price"> Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений.
. . .
|
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения
Продолжаю серию постов о дискретно-событийной модели рабочего. . .
|
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы
Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
|
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция
Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
|
|
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
|
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
|
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
|
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика
Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
|