os-js / OS.js

OS.js - JavaScript Web Desktop Platform
https://www.os-js.org/
Other
6.88k stars 819 forks source link

Task Manger for Osjs #789

Closed mahsashadi closed 2 years ago

mahsashadi commented 2 years ago

Does Osjs have any task manager for showing memory usage in client-side? If there is not, what is your suggestion for developing such a capability? I am thinking of one application which can shows memory usage per app, widget, and so on.

andersevenrud commented 2 years ago

There is no way to show memory usage per app, etc. These all run within the same shared memory.

andersevenrud commented 2 years ago

Closed by mistake...

mahsashadi commented 2 years ago

As I searched, getting size of objects is not provided in JS language.

Although I have found one library to do this, but the valid amount of consumed memory by each object is specified at run time, and depended on browser.

So do you think we can make use of modules like that to calculate memory usage of OSjs apps?

andersevenrud commented 2 years ago

That won't really help because it can only get the size of an object. There's more to it that that.

mahsashadi commented 2 years ago

Yes, as you said, for example, functions are not supported.

Even if one module can calculate all types, is that usable? Because as I know memory consumption is specified at run time by browser.

andersevenrud commented 2 years ago

No, there is no way to figure this out on a per-app basis.

The closest you can get to measuring this is developer profiling tools with some clever filtering. But that's not something one can really do on runtime.

This goes way beyond just types, objects and functions. There are references, DOM, garbage collection, physical script sizes, etc.

On Sun, Feb 20, 2022, 20:17 mahsashadi @.***> wrote:

Yes, as you said, for example, functions are not supported.

Even if one module can calculate all types, is that usable? Because as I know memory consumption is specified at run time by browser.

— Reply to this email directly, view it on GitHub https://github.com/os-js/OS.js/issues/789#issuecomment-1046303120, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABHODFUBBHFPTCWJAE2PU3U4E445ANCNFSM5OGX563A . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you modified the open/close state.Message ID: @.***>

andersevenrud commented 2 years ago

Going to close this because I think this discussion has concluded.

Even though there's no way to measure performance stats, I would happily accept and document (or transfer to the official org account) an app like this.