Giter VIP home page Giter VIP logo

Comments (4)

dmroeder avatar dmroeder commented on July 29, 2024

Thanks for posting the code you are using, this will be very helpful. I'll dig into this as soon as I get a chance.

from pylogix.

dmroeder avatar dmroeder commented on July 29, 2024

First, when you are passing the instance of PLC() to your functions, it is named PLC, I would not do it that way because the module is named the same.

Second, put a small delay between starting your threads, say 100ms. Your second thread is requesting data before first thread has established the connection, so it's trying to establish the connection twice.

Let me know how this works for you.

main (2).txt

from pylogix.

saihenjin avatar saihenjin commented on July 29, 2024

This improves it a little bit, but I do still run into this error rarely (something like once every 100 starts). The more reliable solution I have found is to just not share the PLC object between the threads -- let each thread have its own instance.

Thanks a lot!

from pylogix.

dmroeder avatar dmroeder commented on July 29, 2024

That is actually the way I would do it. Have an instance per thread. That is my test I did initially, then I worked my way back to closer what you were doing.

Your code will be pretty useful to me I think. I will do some more stability tests and it should help come up with better error handling.

from pylogix.

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.