У меня есть форма в 24/7 приложении, которое, вероятно, будет необходимо в целые 1000 раз в день. Имеет смысл создавать/уничтожать эту форму каждый раз, когда мне нужен он, или действительно ли это - пример ситуации, где форма должна быть постоянной?
Имеет ли смысл создавать/уничтожать эту форму каждый раз, когда она мне нужна, или это это пример ситуации, когда форма должна быть постоянной?
1000 раз в день - это многовато. Создание и уничтожение технически потребляет ресурсы и занимает время, но в зависимости от того, что находится на форме, это может быть не так много. Вопрос о том, нужно ли уничтожать и воссоздавать форму, на самом деле заключается в том, как работает форма. Если вы не создаете ее заново, вам придется каждый раз беспокоиться о том, чтобы вернуть форму в исходное состояние. При повторном создании это делается за вас. С другой стороны, если извлечение данных для создания формы занимает несколько секунд, то сохранение формы может быть лучшим вариантом. К сожалению, лучший ответ: "Это зависит от каждого сценария"
.Это действительно зависит от того, насколько дорого обходится создание формы и есть ли у нее какие-либо побочные эффекты. Если форму можно создать быстро (требуемое время значительно ниже уровня обнаружения пользователя), то не лишним будет создавать ее каждый раз. Если его создание стоит дорого, и пользователи не хотят видеть его, когда он не используется, вы можете просто скрыть его, когда он не используется. Однако убедитесь, что у него нет побочных эффектов. Если он все еще реагирует на события, когда он скрыт, могут произойти неожиданные (обычно плохие) вещи.
Просто сохраните его навсегда. Если это раздражает пользователей, вы можете свернуть его в строку состояния (чтобы он исчез из панели задач) и позволить пользователям снова показать его, щелкнув либо на значке состояния, либо на самой программе (это означает, что они могут просто сказать программе запустить ее, и когда она запускается, она проверяет, запущена ли она уже, устанавливает запущенный экземпляр видимым и снова закрывает только что запущенный экземпляр).
Дать хороший ответ на этот вопрос сложно из-за ограниченности предоставленной вами информации.
Я думаю, это зависит от того, равномерно ли используется форма в течение дня и хранит ли она какие-либо ресурсы или ручки. Но если это простая форма, которую легко повторно инициализировать, я бы, вероятно, держал ее открытой и просто прятал, когда это необходимо.