Menu

SharedMemConnection code (Windows only)

Developers
PeterK
2008-04-18
2013-04-24
  • PeterK

    PeterK - 2008-04-18

    I've finished the SharedMemConnection class, that uses shared memory for communication and can be used as an drop-in replacement for TcpIpConnection (well, almost, doesn't have a port parameter). Compared to TcpIpConnection it performs better for non-persistent connections, since setup costs for shared memory is negligible compared to sockets (at least under Vista, where it was tested).

    The code can be downloaded here:
    http://www.elementec.de/download/code/shared_mem_connection.zip

    I have placed the code in the contrib project, then it can be used like this:

    #include <ulxmlrpcpp/contrib/smem_connection.h>

    elementec::SharedMemConnection aConn(bIs_Server,"advertisedName");
    ulxr::HttpProtocol aProt(&aConn,"advertisedName",0);

    The implementation is currently only for Windows, I have marked all places with platform-specific code with a #pragma message. Please feel free to complete the code for other platforms.

    Peter

     
    • Ewald Arnold

      Ewald Arnold - 2008-04-21

      Hello,

      nice to receive this contribution :-) I already added it to the repository. I will try to create a small test case and maybe in the future port it to unix.

      I plan to release a new version soon and will then include the files :-)

      greets

       
      • PeterK

        PeterK - 2008-04-24

        > I plan to release a new version soon

        What is you time frame for the release?

        I'm asking beacause I'd also like to contribute my wxWidgets fixes. I have also planned to improve the caching mechanism of the http server (add some caching strategy, make it configurable (e.g. during web development, I need to turn off caching) , increase lookup speed by using a hash_map instead of a list, etc.)
        So, if I knew, when you plan to release, I could try to submit my additions in time.

        BTW, I have planned to use ulxmlrpc in my product "elementec IncidentManager", which is a enterprise application for business continuity management. ulxmlrpc will be used for IPC, as well as for the built-in HTTP server.

        Cheers,
        Peter

         
        • Ewald Arnold

          Ewald Arnold - 2008-04-24

          Hello,

          there is no deadline for the release, it is just that the last official release is 6 months ago :-) and there were serveral more or less useful changes since then.

          I assume you know how to get the sources from svn, so you can read file ChangeLog so see what happened.

          BTW: if you want to keep in touch, you may as well email me personally and in german :-)

          greets

           

Log in to post a comment.

MongoDB Logo MongoDB