测试结果,自己写的效率要高一些
4> test_io:test(1000)
4> .
{[io,0],[my,0]}
5> test_io:test(10000)
5> .
{[io,2],[my,1]}
6> test_io:test(100000)
6> .
{[io,21],[my,4]}
7> test_io:test(1000000)
7> .
{[io,97],[my,57]}
8> test_io:test(10000000)
8> .
{[io,1596],[my,761]}
9>
1 -module(test_io).
2 -export([test/1, test/0]).
3
4 test() ->
5 test(1).
6
7 test(N) ->
8 IoResult = test_io(N),
9 MyResult = test_my(N),
10 {[io, IoResult],[my, MyResult]}.
11
12 test_io(N) ->
13 StartTime = timestamp_in_millinsec(),
14 [begin
15 {{Y,M,D},{Hour,Min,Sec}}=erlang:localtime(),
16 Date = lists:flatten(io_lib:format("~4..0B-~2..0B-~2..0B ~2..0B-~2..0B-~2..0B", [Y, M, D, Hour, Min, Sec])),
17 Date
18 end || tt<-lists:seq(1,N)],
19 EndTime = timestamp_in_millinsec(),
20 EndTime - StartTime.
21
22 test_my(N) ->
23 StartTime = timestamp_in_millinsec(),
24
25 [begin
26 {{Y,M,D},{H,Mn,S}}=erlang:localtime(),
27 F=fun(X) -> if X>9 -> integer_to_list(X) ; true -> "0"++integer_to_list(X) end end,
28 Ys = F(Y),
29 Ms = F(M),
30 Ds = F(D),
31 Hs = F(H),
32 Mns = F(Mn),
33 Ss = F(S),
34 Date = (Ys ++ "-" ++ Ms ++ "-" ++ Ds ++ " " ++ Hs ++ ":" ++ Mns ++":" ++Ss),
35 Date
36 end || tt<-lists:seq(1,N)],
37 EndTime = timestamp_in_millinsec(),
38 EndTime - StartTime.
42
43 timestamp_in_millinsec()->
44 {MegaSec,Sec,MicoSec}=erlang:now(),
45 MegaSec * 1000000000+Sec*1000+MicoSec div 1000.
46
分享到:
相关推荐
了解了"io_lib"的基本功能和应用场景后,开发者可以进一步研究其API文档,学习如何集成到自己的项目中,实现定制化的屏幕录像需求。此外,持续关注软件更新(如1.11.0b4版之后的版本),可以帮助开发者掌握最新的...
因此,fat_io_lib库需要在这样的环境下实现高效且安全的文件操作,这对库的设计提出了挑战。 fat_io_lib的实现可能包含以下关键知识点: 1. **内存管理**:在seL4中,内存管理严格且高效,fat_io_lib库需要遵循...
《PyPI官网下载 | checkio_client-0.2.10.tar.gz——探索Python库的分布式应用》 PyPI(Python Package Index)是Python开发者的重要资源库,它提供了丰富的Python库,供全球开发者下载和使用。在PyPI官网上,我们...
在MATLAB中处理XML文件通常需要编写自定义的解析代码,但“xml_io_tools”这个包提供了一个简单易用的接口,帮助用户避免了这种复杂性。 该包的核心功能是简化MATLAB中XML文件的读取操作。MATLAB自身虽然内置了一些...
在本文中,我们将深入探讨IO-Link开发以及其在PLC中的应用,同时会提及"Lib_IO_Link_UDTs"这个库,它是实现这一功能的关键。 首先,理解IO-Link的核心概念至关重要。IO-Link是基于串行通信的,它通过标准的三芯电缆...
1. **解压文件**:首先,你需要解压缩`xml_io_tools_2010_11_05.rar`,这将生成一个包含工具源代码和其他必要文件的文件夹。 2. **添加到MATLAB路径**:在MATLAB环境中,你需要将解压后的文件夹添加到MATLAB的搜索...
《高效IO:深入理解io_uring》 在Linux操作系统中,进行文件I/O操作有多种方式。最初的且最基础的是read(2)和write(2)系统调用,随后增加了带有偏移量参数的pread(2)和pwrite(2),接着又有了基于向量的preadv(2)和...
Hardware_IO_Tools_for_Xcode_7.3.dmg
java控制串口发送数据时在windows环境下正常,linux环境下报错C [librxtxSerial.so+0x75da] Java_gnu_io_RXTXPort_nativeDrain+0xea,经多方查询验证为rxtx包版本问题,用本文档中的版本可以正常运行
通过"io_driver_test"案例,我们可以动手实践上述理论,从编写驱动代码,到编译、加载和测试,理解驱动程序的全生命周期。在这个过程中,不仅可以学习到LED驱动的具体实现,还能掌握Linux内核驱动开发的基本技能。 ...
总的来说,STM32F0xx_StdPeriph_Lib_V1.3.1是为STM32F0系列设计的一个强大且易用的软件工具,它极大地降低了开发难度,提高了开发效率,使得开发者能够专注于应用程序的逻辑,而不是底层硬件的细节。对于初学者和...
Agilent IO Libraries Suite 15.5 是一款专为Windows XP设计的软件,它提供了与安捷伦(Agilent)仪器进行数据通信和控制的重要工具。这款套装包含了各种驱动程序和应用程序,使得科研人员、工程师以及技术人员能够...
Debug版本Release版本 文件内容: CC_CORE_LIB.dll CC_CORE_LIB.lib CC_FBO_LIB.lib QCC_DB_LIB.dll QCC_DB_LIB.lib QCC_GL_LIB.lib QCC_IO_LIB.dll QCC_IO_LIB.lib qcustomplot.lib
在实际的工程实践中,我们可能会创建一个名为“fileio_test”的文件来实现这些测试。 首先,让我们了解Verilog中的文件打开操作。使用`$fopen()`系统任务可以打开一个文件,该任务需要两个参数:文件名和打开模式。...
标题"Text-IO.zip"提及的"TEXT IO_VHDL testbench"指的是在VHDL中构建一个Testbench来处理文本输入/输出操作。Testbench通常包含模拟外部环境和激励,以便对设计进行全面的测试。在VHDL中,`text_io`库提供了读写...
在解压后,里面可能包含源代码文件、编译脚本、测试用例、README文件等,这些都是理解和使用`fat_io_lib`的关键资源。阅读README文件可以获得关于如何构建和安装库,以及如何在项目中集成它的指导。同时,测试用例...
可以读写xml格式文件,实现xml格式数据和matlab数据结构之间转换
通过`drv_io_pwm.c`和`drv_io_pwm.h`这样的驱动文件,我们可以创建一个可配置的、易于移植的PWM生成接口,满足不同项目的需求。在编写和使用这类代码时,良好的注释和模块化设计是关键,能够提高代码的可读性和复用...
本压缩包“xml_io_tools_2010_11_05.zip”包含了处理XML文件的一系列工具,主要涉及XML的读取和写入操作,以及相关的编码解码功能。 首先,我们关注到几个关键的MATLAB脚本文件: 1. `xml_tutorial_script.m`:这...
RapidIO SRIO(串行RapidIO)是RapidIO技术的一种实现,它利用串行接口替代传统的并行接口,降低了布线复杂性和成本,同时保持了高性能。在嵌入式系统中,SRIO能够提供比PCI Express等其他互连技术更低的功耗和更小...