2
我正在查找例如powershell/cmd中的代碼,以在下載速度低於5 mbps時終止進程。在下載速度下降時在窗口中殺死進程
情況是我使用VLC mediaplayer做直播。通常情況下,廣播發生故障或者開始擁堵。
解決方案是重新啓動。但是,只有當有人抱怨無法連接時,我纔會重新啓動它。
我正在尋找一個腳本/代碼來監視這個過程,並在下載速度低於某個水平或不一致時自動重啓/關閉它。
我正在查找例如powershell/cmd中的代碼,以在下載速度低於5 mbps時終止進程。在下載速度下降時在窗口中殺死進程
情況是我使用VLC mediaplayer做直播。通常情況下,廣播發生故障或者開始擁堵。
解決方案是重新啓動。但是,只有當有人抱怨無法連接時,我纔會重新啓動它。
我正在尋找一個腳本/代碼來監視這個過程,並在下載速度低於某個水平或不一致時自動重啓/關閉它。
言下之意VLC從磁盤讀取的內容和速度,你可以使用一個盤的讀取速度處理性能計數器1秒測定其出站網絡速度相匹配:
@echo off
setlocal enableDelayedExpansion
set LIMIT=500000
set PROCESS=VLC
:LOOP
set line=0
for /f "delims=, tokens=2" %%a in ('typeperf -sc 1 "\Process(%PROCESS%)\IO Read Bytes/sec"') do (
set /a line+=1
if !line!==2 (
set speed=%%a
set speed=!speed:"=!
for /f "delims=. tokens=1" %%b in ("!speed!") do set speed=%%b
if !speed! LSS %LIMIT% (
taskkill /f /im %PROCESS%.exe
call RUN-VLC.bat
)
)
)
goto LOOP
假設5Mbps的是500kbps的所述LIMIT
相應地設置到500000
。
感謝您的回覆,但它是一項IO活動的網絡活動。所以實際上沒有任何東西被存儲或寫入光盤。如果這個檢查可以通過網絡適配器執行,或者它可以執行。但是如果我查看taskmanager,VLC只有網絡沒有IO活動。 – Sambir
如果VLC是使用網絡帶寬的唯一過程,那麼只應更改計數器名稱,這很簡單。 – wOxxOm
櫃檯名稱應該改成什麼?而且vlc不是唯一使用bandwith的應用程序,因此它應該是特定於應用程序的。 – Sambir