zoukankan      html  css  js  c++  java
  • how to design a hardware service use .net remoting

    This is a simple document about Hardware service and purposes of resources lock issue.

    About the hardware resources lock issue:

    1.         Add a member named IsLocked to the Remote Service Object, and this lock member indicates that the Hardware resource is available or already be used by other client application. I think it is better if we add a resource queue to manage several Hardware resources in the future.

    2.         Add a property named Timeout that specifies the time-out period to the Remote Service Object. I think the default is 5 minutes and the minimum allowed value is 0 minute, if 0 minute it means that the session should never timeout. If the client does not to communicate with the service within the time-out period, then the session ends, and the service tear down the state of the Hardware resource to clean up and free the memory.

    Hardware service API overview:

     

    IDevice

    The interface of the devices

    Acquire ()

    Request a device from Hardware service by .net Remoting. If the device hardware is available return true, then initialize device resource and lock this device. Otherwise if the device hardware is busy or unconnected, return false.

    Release ()

    Called once when the device stops, unlock the device and clean up the resources used by the device.

    a)         User requests a Signature Pad resource to Hardware Service.

    b)         If the Signature Pad resource is not available, then pop message “Signature Pad is busy. Please try later.

    c)         If the Signature Pad resource is available, then get the resource and lock it.

    d)         User sign on Signature pad.

    e)         If user never does anything within the time-out period, then session ends, pop message “Session timeout” to user, and Hardware service auto unlock the resource.

    f)           After finished sign, User will unlock the device resources

  • 相关阅读:
    linux学习之高并发服务器篇(二)
    linux学习之多高并发服务器篇(一)
    Linux学习之socket编程(二)
    Linux学习之socket编程(一)
    CMSIS-RTOS功能概述
    CMSIS-RTOS的使用
    CMSIS-RTOS 简介
    深入理解void以及void指针的含义
    C语言操作数截断
    惊人发现:火星上有水!会有生命吗? 未完
  • 原文地址:https://www.cnblogs.com/umlchina/p/989687.html
Copyright © 2011-2022 走看看