Pracuję dla biura obsługi, używamy MS Office w systemie Windows 7. Zauważyłem, że gdy jeden program biurowy ulega awarii, a jeśli inny jest uruchomiony, zamknięcie drugiego działającego programu biurowego pozwoli na ponowne uruchomienie tego, który uległ awarii, jeśli nie zamykaj go, wydaje się, że to nie działa.
Na przykład:
Załóżmy, że aplikacja Outlook ulega awarii i masz uruchomiony Skype. Jeśli spróbujesz ponownie uruchomić program Outlook przez większość czasu, pojawi się błąd mówiąc coś podobnego do Cannot open Outlook
. Jeśli jednak zamkniesz Skype i uruchomisz ponownie program Outlook, program Outlook uruchomi się pomyślnie, a Skype również będzie działał pomyślnie.
Moje pytanie brzmi: czy to się dzieje, ponieważ MS Office wątkuje ten sam plik DLL? Na przykład jeden wątek uruchamia jedną aplikację, a drugi wątek uruchamia inną, co miałoby sens, ponieważ z tego, co rozumiem, jeśli wątek ulega awarii, a inny wątek działa, nie uruchomi drugiego wątku, dopóki drugi wątek się nie zakończy.