Tại sao nên đóng tất cả các chương trình trước khi cài đặt một chương trình mới?


9

Những loại vấn đề phát sinh từ việc cài đặt một chương trình mới trong khi các chương trình khác đang chạy? Tôi tưởng tượng GAC đã giải quyết rất nhiều vấn đề cũ của việc chia sẻ dll. Vậy những loại vấn đề vẫn phát sinh? Tôi có thể thấy các vấn đề với việc nâng cấp một chương trình duy nhất, nhưng bên ngoài điều này thật khó để hiểu tại sao các ứng dụng sẽ dậm chân trên mỗi ngón chân.


Điều này chỉ cần thiết cho các hệ điều hành bị tê liệt. Với các hệ thống tốt hơn, bạn có thể cài đặt nhị phân hoặc lib trong khi các phiên bản cũ vẫn đang chạy hoặc trong trường hợp có kết nối mạng sshd.
ott-- 18/05/2015

Câu trả lời:


14

GAC chỉ giúp với các hội đồng .NET. Có rất nhiều ứng dụng khác không được viết bằng .NET.

Những vấn đề khác tồn tại?

  • Các ứng dụng khác giữ tập tin mở
  • Các ứng dụng khác giữ kết nối mạng mở
  • Các ứng dụng khác giữ các thiết bị mở
  • Các ứng dụng khác làm chậm máy để có thể xảy ra thời gian chờ bất ngờ ở đâu đó khiến công việc bị gián đoạn
  • Các ứng dụng khác sửa đổi các tệp và cài đặt trong hệ thống, trình cài đặt sẽ không thay đổi trong suốt quá trình (coi đó là tính toàn vẹn giao dịch)

Tại sao có nguy cơ thất bại trong quá trình cài đặt khi nó rất dễ dừng các ứng dụng khác và chỉ chờ vài phút? Đi uống cà phê trong lúc đó. :)


10
+1 gì? Có lập trình bên ngoài .NET? Đây là gì, 2010?
P.Brian.Mackey

3
Bằng cách nào dễ dàng để dừng tất cả các ứng dụng khác và sau đó mở lại chúng với cùng cấu hình, để tôi có thể tiếp tục làm việc ở nơi tôi rời đi? Hay ai đó có liên quan mong đợi các nhà phát triển làm việc trong các nhiệm vụ ngắn độc lập hoàn toàn bị gián đoạn?
David Thornley

2
@David Thornley: Bạn không cài đặt mọi thứ mỗi giờ phải không? Ví dụ, tôi đã cài đặt các công cụ tôi cần một lần, tạo một hình ảnh và không có cài đặt lớn kể từ nhiều tháng.

1
@Brian: Correction, 2011 ;-)
Joris Meys

2
@ Nghệ thuật phát triển: Không phải mỗi giờ, nhưng đôi khi tôi muốn có một công cụ cụ thể cho những gì tôi đang làm và đôi khi một trong những công cụ hiện tại của tôi quyết định muốn cập nhật bằng trình cài đặt. Ngoài ra, tôi cảm thấy khó chịu khi tôi không thể làm những thứ trên MS Windows mà tôi thường làm trên Linux hoặc Mac OSX.
David Thornley

9

Bạn không thể ghi đè lên một DLL hoặc EXE đang được sử dụng bởi một ứng dụng khác. Các lời nhắc bằng văn bản tốt hơn nói "hãy nhìn, hoặc đóng những thứ đang sử dụng những thứ tôi muốn cập nhật (và cung cấp cho bạn một danh sách) hoặc tiếp tục cài đặt và chúng tôi sẽ phải khởi động lại sau để thay thế DLL / EXE." Những người lười biếng chỉ mù quáng bảo bạn đóng mọi thứ bạn đang chạy, đề phòng.

Tôi ghét khởi động lại. Tôi ghét đóng những thứ tôi đang sử dụng. Đôi khi tôi chỉ tiếp tục lăn và không đóng bất cứ thứ gì đang chạy. Tôi có một chút dự đoán nếu mọi thứ có thể chia sẻ một DLL, vì vậy, ví dụ nếu tôi đang cập nhật Word, tôi sẽ đồng ý đóng Outlook, nhưng không phải Foxit Reader, tôi biết có lẽ chúng độc lập. Tôi chú ý nhiều hơn đến những gợi ý không lười biếng (điều đó cho tôi biết những gì xung đột liên quan) hơn là những người lười biếng, cũng có thể nói "có thể chứa đậu phộng" cho tất cả những suy nghĩ đã đi vào chúng.


6
+1 cho "có thể chứa đậu phộng". Cũng cho lời nhắc mà liệt kê xung đột.
Craige

5

có lẽ trình cài đặt chỉ là quá hoang tưởng? thành thật mà nói, tôi chưa bao giờ đóng tất cả các chương trình khi một trình cài đặt yêu cầu tôi làm như vậy và không bao giờ gặp rắc rối. Có lẽ chỉ là may mắn.


1

Rất nhiều lần thông báo đó chỉ được chèn dưới dạng văn bản mặc định cho hệ thống cài đặt đang được sử dụng. 9 trên 10 lần có thể bỏ qua. Đây mới chỉ là lần thứ 10 bạn phải lo lắng về: khiến họ mất các bảng tính và tài liệu quan trọng đang được xử lý - một sự cố không quá hiếm gặp trong ngày khi cài đặt phần mềm.


0

Khả năng xung đột giữa ứng dụng được cài đặt và đang chạy một ứng dụng là rất nhỏ. Ngày nay, hầu hết các ứng dụng dựa trên khái niệm về hộp cát và chúng không cần phải sử dụng nó trong quá trình cài đặt (hoặc sử dụng bình thường).

Nhưng giả sử trong khi cài đặt một số phần mềm, một thay đổi cần phải được thực hiện đối với một tệp rất có khả năng đã được mở bởi một ứng dụng khác. Bạn có hai lựa chọn ở đây:

  1. kiểm tra xem tập tin có bị mở / khóa hay không, tìm hiểu quá trình nào đang giữ khóa, hiển thị một hộp thoại đẹp yêu cầu đóng ứng dụng cụ thể đó
  2. chỉ cần yêu cầu người đó đóng tất cả các ứng dụng và bạn đang ở bên an toàn mà không cần nỗ lực thêm

Đáng buồn thay, tùy chọn thứ hai được chọn hầu hết thời gian.


0

đó là bảo hiểm rủi ro. Tôi không bao giờ bận tâm, và không có rắc rối. ngoại lệ duy nhất là cài đặt plugin khi ứng dụng được nhắm mục tiêu (IE, FireFox, Visual Studio, v.v.) vẫn mở

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.