如题

解决方案 »

  1.   

    可能你需要的java函数我们大家全都知道,但是你无法保证我们每个人都知道GetTickCount,你应当把问题描述的更清楚一点,这个GetTickCount到底是干什么用的
      

  2.   

    你起码要解释个函数是搞什么的啊,这样大家才能给你答案GetTickCount Windows API函数可返回Windows 启动以来消失的
    毫秒数。其精度高于VB的Timer 函数。且Timer 函数会在午夜清零,而GetTickCount 函数
    只有当机器连续使用49.7天后才返回零。若是这个你直接写采用JNI本机方法
       RMI服务器和客户机可利用本机方法与现有的和原有的系统连接。您可使用本机方法实现不能直接访问数据库的远程方法,或者通过采用现有代码更简单地实现。您可使用本机接口JNI编写C和C++程序,以实现?Java方法并 Java对象上调用该方法。用本机方法实现shutDown的程序如下: JNIEXPORT void JNICALL 
    Java_OrderServerImpl_shutDown(JNIEnv *env, jobject this) 

    jclass cls; 
    jfieldID fid; 
    DataSet *ds; 
    cls = (*env)->GetObjectClass(env, this); 
    fid = (*env)->GetFieldID(env, cls, "dataSet", "J"); 
    ds = (DataSet *) (*env)->GetObjectField(env, this, fid); 
    /* With a DataSet pointer we can use the original API */ 
    DSshutDown(ds); 
    }
    这是假定了现有服务器通过其API定义的DataSet类型得到了引用。指向服务器DataSet的指针存储在dataSet域中。当客户机调用shutDown时,服务器的shutDown方法就会被调用。因为在服务器实现中声明了要用本机方法来实现shutDown 方法,所以,RMI将直接调用这个本机方法。这个本机方法找到对象的dataSet域,得到其值,并用它调用现有API 的函数DSshutDown。 
      Sun公司目前正与ILOG公司合作,开发一种称作TwinPeaks 的产品。TwinPeaks将能够兼容目前的C和C++ API,并生成 Java类,该Java类包含了到Java类中API的调用。这样,您就能从Java调用现有的任何API。TwinPeaks面市后,将有可能完全使用Java (而非JNI调用)编写诸如shutDown这样的方法。 
      

  3.   

    GetTickCount
    获取系统时钟计数器
    的值,
      

  4.   

    如果是如sunangle(flying_eagle) 所言,那么Java里面没有(除了上面的jni方法),因为java不是单独为了windows服务的