Mengapa Anda tidak dapat menghapus beberapa program secara bersamaan di Windows?
Misalkan Anda memiliki segerombolan kecil program yang ingin Anda hapus pada sistem Windows Anda, tetapi Windows hanya akan membiarkan Anda menghapusnya satu per satu. Mengapa demikian? Apa yang menghentikan Anda dari menghapus beberapa program secara bersamaan?
Sesi Tanya Jawab hari ini datang kepada kami berkat SuperUser-subdivisi Stack Exchange, pengelompokan situs web Q&A berbasis komunitas.
Pertanyaan
Pembaca SuperUser Jeroen Bollen ingin tahu mengapa seseorang tidak dapat menghapus banyak program secara bersamaan di Windows:
Mengapa Windows mencegah Anda menghapus instalan atau menghapus banyak program secara bersamaan? Apa alasan di balik ini? Apakah ini akan mengacaukan sistem internal?
Saya tidak ingin menghapus banyak program secara bersamaan, saya hanya mencari alasan mengapa itu tidak menjadi pilihan.
Apa yang menghentikan orang untuk menghapus instalan banyak program secara bersamaan di Windows?
Jawabannya
Kontributor SuperUser ultrasawblade dan techie007 memiliki jawaban untuk kami. Pertama, ultrasawblade:
Jika Anda membaca apa pun tentang cara kerja sistem pemasang Windows, jelas bahwa mereka menerapkan beberapa ide dari basis data transaksional ke instalasi dan pemeliharaan program, belum lagi bahwa .msi file itu sendiri adalah database.
Selalu ada pertanyaan dalam mendesain basis data apa pun - apakah Anda menginginkan kecepatan atau ketepatan / keamanan? Mengingat bahwa penginstal dapat mengubah konfigurasi sistem dan bahwa kecelakaan dapat membuat sistem tidak dapat dioperasikan, keselamatan telah diberikan prioritas dibandingkan kecepatan.
Salah satu alasannya .msi installer sangat lambat karena file rollback dibuat untuk setiap file, dll. yang akan dimodifikasi, kemudian dihapus setelahnya, memungkinkan setiap perubahan untuk "digulung kembali" jika terjadi kesalahan di tengah-tengah hal (seperti pemadaman listrik atau crash sistem).
Sekarang, saya percaya mesin MSI itu sendiri memberlakukan menginstal, memodifikasi, atau menghapus hanya satu program pada suatu waktu. Jika Anda mencoba menjalankan .msi file saat yang lain sedang mencopot misalnya, itu tidak akan berjalan, atau akan menunggu proses penghapusan yang sedang berjalan selesai. Pemasang non-MSI mungkin tidak berlaku seperti ini karena mereka tidak menggunakan mesin MSI. Tetapi karena keputusan desain keselamatan ini, ini mungkin sebabnya appwiz.cpl bersikeras membiarkan hanya satu uninstaller dipanggil sekaligus.
CCleaner memungkinkan Anda untuk memulai uninstaller tanpa menunggu yang berjalan sebelumnya selesai, tetapi installer MSI mungkin masih tidak berfungsi secara paralel karena hal di atas.
Diikuti oleh jawaban dari techie007:
Ini benar-benar hanya berlaku untuk program yang menggunakan sistem Pemasang Windows.
Jika suatu program menggunakan sistem penginstal mereka sendiri (tidak), maka tidak ada yang menghentikan Anda dari menjalankan uninstaller lain secara bersamaan.
Pemasang Windows membatasi jumlah instance untuk menghindari konflik yang dibuat oleh banyak program saat mereka mengubah pengaturan dan file di seluruh sistem (sering dibagi).
Sebagian besar pencopot melacak apa yang mereka ubah sehingga mereka dapat berhasil kembali jika ada kegagalan. Jika seseorang tidak mengetahui semua perubahan yang dibuat (oleh uninstaller lain), maka itu sebenarnya dapat membuat hal-hal lebih buruk jika mencoba untuk mengembalikan instalasi yang gagal.
Sistem Penginstal Windows dibuat dengan tujuan menjadi sistem terpadu untuk digunakan semua pengembang aplikasi (pada Windows) untuk membantu menghindari masalah seperti ini.
Punya sesuatu untuk ditambahkan ke penjelasan? Berbunyi dalam komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang mengerti teknologi lainnya? Lihat utas diskusi lengkap di sini.