Giter VIP home page Giter VIP logo

Comments (11)

keeslinp avatar keeslinp commented on June 26, 2024

Hmm, that's really strange. I took a look at it yesterday but for some reason the project wasn't​ building for me after recent changes. I'm gonna take a better look at it soon. I wonder if there's something you're supposed to call after spawn(). A new compiler warning popped up that complained about a return value not being used after spawn. I suspect that's relevant.

from i3status-rust.

greshake avatar greshake commented on June 26, 2024

I really don't have time to help you a whole lot right now, but spawn() returns a handle to the child process and doesn't block until it's finished. You should use the handle to ensure all child processes are killed in the end. Also, try to update in a separate thread, that way other block updates don't stall until you've updated the package db. Actually, any update which queries network or does some other huge operation should be executed separately. Should have documented this and told you earlier, sorry about that, but I'm to my neck in other tasks right now. Look at the pending PR for the weather block; the guy did exactly that (his code is very nice). Use an Arc<Mutex> to send data between your update thread and the main thread.

from i3status-rust.

greshake avatar greshake commented on June 26, 2024

Oh, and no idea why it wasn't building, I tried paying attention not to push broken changes. Just checked and master is building fine, except for a couple warnings.

from i3status-rust.

keeslinp avatar keeslinp commented on June 26, 2024

Thanks for the suggestion :). I don't know what was wrong either, I was getting some errors about missing things. I ended up just removing and recloning the repo and all was well. I'll make the changes you suggested.

from i3status-rust.

pitkley avatar pitkley commented on June 26, 2024

Since the refactor I did (#37) has been merged, can you (@greshake @keeslinp) check if you still have defunct processes? I have not experienced it since, but more data would be great 👍

from i3status-rust.

greshake avatar greshake commented on June 26, 2024

I'll keep an eye on it. by the way, I just noticed the click isn't working yet (you're not using a ButtonWidget)... Sorry for the big clusterfuck that is widgets and click handling right now.. Will be redone soon. Also, blocks that take a really long time to update currently block other blocks from updating. This will also be fixed with my partial rewrite.

from i3status-rust.

Peltoche avatar Peltoche commented on June 26, 2024

Hi,
The issue is still running and is present in the spotify block too.

from i3status-rust.

pitkley avatar pitkley commented on June 26, 2024

@Peltoche are you running an up-to-date version of i3status-rust? This was probably fixed with cb8ac6b, at least I haven't experienced this issue since then.

Be careful: if you update to a relatively recent version, you will have to update your configuration from JSON to TOML, see here on how to do it.

from i3status-rust.

greshake avatar greshake commented on June 26, 2024

@Peltoche I don't think this can be caused by the Music block. It's using a single thread to wait for Dbus signals, and it is only created on startup. Please elaborate if you have further information, 'is present' is not very helpful with a new issue. If the music block also has a thread leak, the issue won't be related to the pacman block.

from i3status-rust.

Peltoche avatar Peltoche commented on June 26, 2024

@pitkley an update fix it indeed, thanks.

from i3status-rust.

greshake avatar greshake commented on June 26, 2024

Alright, I assume that this is resolved now. Closing

from i3status-rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.