Coder Social home page Coder Social logo

Comments (3)

jklmnn avatar jklmnn commented on September 22, 2024

I noticed that this approach is problematic for the block interface. It defines the Request type in Gneiss.Block.Client which depends on the Context type. Since the requests are often part of the application state the Context type also depends on the Request type creating a circular dependency. A solution could be changing the block interface accordingly, that all types containing relevant state should be defined in the session package and not inside its children. I would omit the block session for now since we do not have it on Linux and therefore cannot prove it.

from gneiss.

jklmnn avatar jklmnn commented on September 22, 2024

Server.Finalize and Server.Initialize are only called by Dispatcher.Session_Cleanup and Dispatcher.Session_Initialize. They also need a context argument.

On Linux currently Finalize and the server event are both called by the same callback. And both get the Server_Session as argument. If Finalize is to be called by Session_Cleanup which only can be called from within Dispatch, the event needs to pass both the server and the dispatcher session. To avoid aliasing there should be two events, one for an IO event and one for an error event. The first will call the server event and the latter will call dispatch. Both get their own session parameter. Also both will get the file descriptor that called them passed.

from gneiss.

jklmnn avatar jklmnn commented on September 22, 2024

Fixed by #173.

from gneiss.

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.