Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/152.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java纳米时间与C++;纳秒_Java_C++_C++11_Time_Chrono - Fatal编程技术网

java纳米时间与C++;纳秒

java纳米时间与C++;纳秒,java,c++,c++11,time,chrono,Java,C++,C++11,Time,Chrono,我想打印两种语言的纳米时间,并比较其值 JAVA代码 long nano_startTime = System.nanoTime(); System.out.println(nano_startTime); system_clock::time_point begin = system_clock::now(); auto since_epoch = begin.time_since_epoch(); // get the duration since epoch std::cout <

我想打印两种语言的纳米时间,并比较其值

JAVA代码

long nano_startTime = System.nanoTime();
System.out.println(nano_startTime);
system_clock::time_point begin = system_clock::now();
auto since_epoch = begin.time_since_epoch(); // get the duration since epoch
std::cout << std::to_string(duration_cast<nanoseconds>(since_epoch).count()) << std::endl;
C++代码

long nano_startTime = System.nanoTime();
System.out.println(nano_startTime);
system_clock::time_point begin = system_clock::now();
auto since_epoch = begin.time_since_epoch(); // get the duration since epoch
std::cout << std::to_string(duration_cast<nanoseconds>(since_epoch).count()) << std::endl;
顺便说一句:如果我使用毫秒,结果是等效的。但我需要更精确的时间数据,不幸的是java中没有微秒

有人能帮我吗? 谢谢。

阅读(增加强调):

此方法只能用于测量经过的时间,与系统或挂钟时间的任何其他概念无关返回的值表示纳秒,因为某些固定但任意的起始时间(可能在将来,因此值可能为负值)。Java虚拟机实例中此方法的所有调用都使用相同的源代码;其他虚拟机实例可能使用不同的源

P>另一方面,在C++代码中,<代码> SunCE-PyLeC< <代码>是时间,嗯,因为EngCH(假定该方法没有被命名为随意的;您也可以检查它的文档)。 和
System.currentTimeMillis()
返回:

当前时间与UTC 1970年1月1日午夜之间的差值(以毫秒为单位)

所以这也返回了自大纪元以来的时间


文档是了解方法行为的良好开端。

我是否有可能进行比较?因为我使用的是两种语言的应用程序。毫秒是我能从java中获得的最大值?请看java中纳秒类的文档。Java只能使用底层系统提供的时间,很难保证纳秒。