安装 Steam
登录
|
语言
繁體中文(繁体中文)
日本語(日语)
한국어(韩语)
ไทย(泰语)
български(保加利亚语)
Čeština(捷克语)
Dansk(丹麦语)
Deutsch(德语)
English(英语)
Español-España(西班牙语 - 西班牙)
Español - Latinoamérica(西班牙语 - 拉丁美洲)
Ελληνικά(希腊语)
Français(法语)
Italiano(意大利语)
Bahasa Indonesia(印度尼西亚语)
Magyar(匈牙利语)
Nederlands(荷兰语)
Norsk(挪威语)
Polski(波兰语)
Português(葡萄牙语 - 葡萄牙)
Português-Brasil(葡萄牙语 - 巴西)
Română(罗马尼亚语)
Русский(俄语)
Suomi(芬兰语)
Svenska(瑞典语)
Türkçe(土耳其语)
Tiếng Việt(越南语)
Українська(乌克兰语)
报告翻译问题



You can already run a wide range of agmes on Steam without the Steam client.
http://steam.wikia.com/wiki/List_of_DRM-free_games
The only way to do that is if a game were to rip out all the Steamworks sub-systems. So sure you can have a game work without Steam as long as you don't want achievements, matchmaking, card drops, etc.
Steam doesn't take up any memory or CPU at all. If you miniize the client it takes up less than 25MB.
If it was taking 20MB and no CPU on Mac I would happily run it all over the time, but it's not :(
Also note that 'memory usage' is a very very ephemerial thing. Let the OS do it's job. It's better than you at managing memory. And Unix especially always allocates ALL memory away so it's not suprising that Steam is getting 200MB 'just because'. Your system always has 0 MB of memory free. That's by design.
@ReBoot Yes I am sure. I have run it through Instruments, here is what I got:
http://i39.tinypic.com/2qbd5rq.png
No matter what is has 150MB allocated. Also it is constantly utilizing 2-3% CPU.
Again Steam is a BROWSER built on top of an application. And yes that takes up memory. Unless you're running on 1GB of system memory it's not something to worry about. When Steam takes up 1GB of memory then you can complain about 'problems'. You're not running XP for god sakes. Stop worrying about memory usage unless you're actually running out of memory.
[/quote]
Change your default view to the Library, the 2-3% is liekly cus it's cyclicng the UI in the Store interface
Even with 4GB of memory i had to do that in order to have Dota2 not swapping ingame (Ingame Top says i use 3.97GB of RAM).
The Extra 200MB of free memory that could be achieved are not to be minimized, even on maxed out configurations.
12GB here on iMac and 8GB on MBP, so memory is not a concern, my concern is bad design of the app. I am running many other apps such as IM clients, mail clients, and if I let each of these app take unreasonable amount of memory regardless of what their do I'd run out of my 12GB soon :> Also I wish to have as much of memory for app that I use i.e. Photoshop or Mathematica, so I am not happy other app is consuming my memory w/o good purpose.
It does take 2-3% in Library, even it is minimized, it seems there's loop that is running all the time regardless is Steam app has focus or not. C'mon this is not a GAME, we don't need constant UI update, and anyway there're no animations or whatsoever.
While a Steam window is on screen, it spends a truly shocking amount of time in the VGUI code just repainting itself, over and over and over, even when the window isn't changing or being interacted with at all. That's really bad. It really shouldn't be doing that.
The next worst thing is a call to poll() in CSocketThread::CSocketRunThread::Run() inside steamclient.dylib, which (if my Assembly holds up) is indeed called in a loop. It seems that they're doing that to check if there's anything to read on the socket. That's a really not good way to implement networking. You should ask the OS to put you to sleep, and only wake you up when there's data ready and waiting for you. Although, that said, I'm not an expert on implementing such things, so they may be doing the right thing already.
It's very possible that the problem is they've got the time-out on the poll() set far too short, in which case poll() will get called really frequently and you get hurt by continually jumping into and out of the kernel. Hard to tell, but that's my suspicion.
The next few hottest things all seem to be the fault of steamclient too. The bad news is: all the stuff that's in steamclient (.dylib on Mac, .dll on Windows) is the code that would end up in your DRM daemon. Creating such a DRM daemon would mostly just be a case of hosting the steamclient.dll/dylib in another process from the SteamUI. That's how Steamworks works, the game process hosts a copy of the steamclient library which it interacts with, and then the game's instance of steamclient communicates back to the main Steam process over IPC.
In a 6 minute 44 second run (i.e. 404000 ms) there was 11592 ms spent on the UI, and 5054 ms spent on the stuff that would end up in the DRM daemon. The UI stuff shrinks to less than half of the DRM daemon stuff if you close all open Steam windows.
Generally, it looks like the problem is that most apps sit and do nothing if they're not being interacted with, either by the user or by external IO. They put themselves to sleep, and are woken when something happens. Steam sits and does work by itself for no good reason at all, all the time, pointlessly.
Doesn't MacOS have this app nap feature to stop idling apps from eating ressources?
And yeh, App Nap in Mavericks really helps when it kicks in. It makes it less worrying to leave Steam running on an unplugged laptop. That said, Steam still causes a disproportionate number of idle wake-ups compared to everything else on the system, and you do have to be zealous about closing all Steam windows to make sure App Nap kicks in.
I'm however talking about Steam on Windows 10.
Because that person is using an client that is 11 years old. Much like this topic. Times have changed.