VLC'nin bu davranışı normal mi?


11

Yüklü ubuntu 16.04 birlik son güncellemeler, piyasadaki en iyi Asus oyun dizüstü bilgisayarlardan birine sahibim, VLC yüklü ama asla kullanmıyorum.

Son birkaç aydır, bilgisayarımı kapatamadım, her yapmaya çalıştığımda, fanlar çok hızlı dönmeye başlıyor ve kilitleniyor, bu yüzden sadece kapat düğmesine basıyorum, bu sorun sadece kapatıldığında oldu , yeniden başlatma değil Ben bile sorunu çözmeye çalışırken rahatsız etmedi.

Bugün, çalışırken fanları kapatırken normalde yaptıkları şeyleri fark ettim. Ben koştu topyine VLC kullanmayın rağmen 2 vlc örneklerini, 122% cpu her gibi tüketen İsmimin altında çalıştırılıyor fark ettim ve vlc dayanan herhangi bir programı kullanmıyorum.

Denedim sudo kill <pid>ve sudo killall <pid>ve sudo killall vlcama yine de daha önce başıma hiç böyle öldürüldü değildi. Onları Ubuntu kaynak monitöründen öldürdüm, öldürüldüler ve kapatma sorunu giderildi ve her şey normale döndü.

Bu daha önce kimseye oldu mu?


Merhaba, Lynob, crontab ile uyumlu olacak şekilde cevabımdaki betiği güncelledim, varsayılan olarak sınırlı sayıda ortam değişkeniyle çalışıyor ... Şimdi, testlerime göre, komut dosyası beklendiği gibi çalışıyor.
pa4080

2
Neden olduğunu öğrenmek istiyorsanız, bir ps aux | grep " $(echo -n $(pgrep vlc | xargs ps -o ppid | tail -n +2 | tr -d ' ') | sed 's/ / \\| /g') "dahaki sefere koşabilirsiniz . Bu, çalışan tüm VLC örneklerini bulur, her biri için üst PID'leri alır ve çıkışında üst PID'leri arar ps aux. Sorunun izlenmesinde yardımcı olabilir.
anonymoose

3
Kayıt için, sudo kill -9 <pid>muhtemelen işe killyaramadıysa işe yarardı . -9Vasıta "öldür şey olması mümkün en korkunç biçimde aşırı önyargı ile hareket eder,". Fazla bir şey hayatta kalamaz. Olmadan -9, daha çok "Lütfen öl? Lütfen, lütfen üstte bir kirazla?"
trysis

1
@trysis: Dikkatli ol kill -9, tehlikeli. Örneğin uygulama altında geçici bir dosya oluşturduysa /var/lock, kaldırılmaz. Benzer şekilde, arabellekler temizlenmez, veritabanı işlemleri gerçekleştirilmez, vb. Herhangi bir yere herhangi bir şey yazılıyorsa, bozuk veya eksik veriler elde edebilirsiniz. VLC muhtemelen bunlardan hiçbirini yapmıyor, ancak varsaymadan önce sorunu anlamaya çalışmanızı tavsiye ederim.
Kevin

1
BTW, VLC asılı ve diğer "garip şeyler" ile yaptığım% 99 sorunları, video kod çözme için donanım hızlandırma kullanmaya çalışırken veya "yanlış" (her ne anlama geliyorsa) video arka ucunu kullanmasından kaynaklanıyordu; Bu şeylerle uğraşmaya çalıştım (codec'ler için HW hızlandırmasını devre dışı bırak, video çıkış arka ucunu değiştirmeye çalış) ve ondan iyi bir şey gelip gelmediğini görüyorum.
Matteo Italia

Yanıtlar:


10

VLC oynatıcı ile benzer bir sorun yaşıyorum. Ama fark şu ki sık kullanıyorum. Unity ile Ubuntu 16.04'te bu sorun için olası (tam olarak kanıtlanmamış) bir çözüm var.

Bu cevaba göre çalışan bir uygulama masaüstü dosyası olup olmadığını test edebiliriz vlc. Hiç kimse yoksa, tüm VLC'nin süreçlerini öldürmeye çalışabiliriz. Bu amaçlar için, adlandırılmış bir yürütülebilir dosya oluşturun ~/bin/vlc-killer.shve içeriği olarak aşağıdaki satırları ekleyin (burada dışa aktarılan envvarlar hakkında bir referans vardır):

#!/bin/bash

# Check whether the user is logged-in: if not then exit
if [[ -z "$(pgrep gnome-session -n -U $UID)" ]]; then exit; fi

# Export the current desktop session environment variables
export $(xargs -0 -a "/proc/$(pgrep gnome-session -n -U $UID)/environ")

# Test whether there is any VLC RunningApplicationsDesktopFile
/usr/bin/qdbus org.ayatana.bamf /org/ayatana/bamf/matcher \
org.ayatana.bamf.matcher.RunningApplicationsDesktopFiles | grep -q 'vlc'

# If not killall VLC processes
if [[ $? -ne 0 ]]; then /usr/bin/killall vlc; fi

Ardından, kullanıcının edit ( crontab -e) için Crontab'ını açın ve aşağıdaki işi (her dakikada komut dizimizi yürütecek olan) uygulayın:

* * * * * $HOME/bin/vlc-killer.sh >/dev/null 2>&1

1
Haklıysam bu sadece vlcGUI aracılığıyla en az bir örneği başlatıldığında çalışır. vlc movie.mpgYalnızca komut satırından (benim gibi) çalıştırmaya alışkınsanız, bu vlcişlem bir dakika sonra sona erecektir . Ancak, yine de güzel bir çözüm ve +1.
PerlDuck

2
@PerlDuck, VLC bir .desktop dosyası veya CLI tarafından başlatılırsa başla, etkin bir VLC "simgesi" ( Dash başlatıcısında ) varken komut dosyası çalışır.
pa4080

1
Oh harika. Bunun farkında değildim.
PerlDuck
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.