microsoft / calculator

Windows Calculator: A simple yet powerful calculator that ships with Windows
MIT License
29.77k stars 5.4k forks source link

Multiple instances of app don't appear as separate processes in Task Manager #83

Open MicrosoftIssueBot opened 5 years ago

MicrosoftIssueBot commented 5 years ago

Problem Statement Calculator supports multiple windows today, but they are all part of a single process. This means that a crash or hang in one instance brings down all instances and that it is not possible to terminate individual instances via Task Manager.

Evidence or User Insights Terminating one instance will shut down all. image

Proposal Instead of handling multiple views of the app within a single process, we should use the new platform APIs to enable an app to be multi-instance. That will allow instances to be tracked in Task Manager, and if one instance crashes the other instances will remain alive.

Goals

Non-Goals

Low-Fidelity Concept N/A

Requested Assignment I'm just suggesting this idea. I don't want to implement it.

MicrosoftIssueBot commented 5 years ago

This is your friendly Microsoft Issue Bot. I created this issue automatically as requested by a team member.

ghost commented 5 years ago

This pitch looks like it has everything it needs for review. In the meantime, we'll keep this idea open for discussion so the community has the chance to provide feedback. Check out our New Feedback Process for more info on the user-centered process we follow for new feature development.

ghost commented 5 years ago

We reviewed the pitch and would love to explore this idea further! The pitch is a great start, but there are still some open questions. I am moving this issue into planning to iron out some of those details and I created calculator-specs/multipleInstances to track progress. A human will follow up with some feedback on your pitch shortly. Keep in mind that not all ideas that make it into the planning phase are guaranteed to make it to release. For more information on next steps, check out our spec workflow.

grochocki commented 5 years ago

There are a number of open questions we have with this one and some trade offs to consider against the current multi-window approach. I know @mcooley and @HowardWolosky have some thoughts here, so I will let them chime in.

mcooley commented 5 years ago

@HowardWolosky and I talked offline about the tradeoffs involved here:

Benefits:

Drawbacks:

rkarman commented 3 years ago

I was not aware of this issue asking for multi-instancing when I was looking at prototyping this functionality, so I have not taken into account the discussion here around pros/cons, potential impact for future features, etc.

However, I did code it up because of other reasons, so if anyone wants to check out my prototype, provide feedback on the approach I've taken, point out where there might be dragons, use it as a template for brining the functionality into main, or simply use it for investigations into the topics identified in this thread (perf overhead, currency converter rate syncs, etc.) feel free to spelunk the following branch on my fork of Calculator: https://github.com/rkarman/calculator/tree/rkarman/multiinstancing