可以从调用方式上面下手,比如用消息交互代替远程过程调用,由于远程过程调用大部分都是同步调用,消息形式交互的话可以实现异步调用,在发送消息后本程序可以一边运行一边等待调用程序返回结果。在设计方法上,可以选择使用面向服务的架构,直接调用已有服务来实现功能,由于已发布的服务都是经过多方考验的,所以若你网络没问题的话应该就可以大大缩短时延。
#include "stdioh"
#include <timeh>
void hannota(int n,char ta1,char ta2,char ta3);
void main()
{
int n;
clock_t begin, duration;
printf("input the number of diskes:");
scanf("%d",&n);
begin = clock();
hannota(n,'1','2','3');
duration = clock() - begin;
printf( "用时约: %d毫秒", duration1000 / CLOCKS_PER_SEC );
printf("\n");
}
void hannota(int n,char ta1,char ta2,char ta3)
{
if(n==1)
printf("%c--->%c",ta1 ,ta2);
else
{
hannota(n-1,ta1,ta3,ta2);
printf("%c---->%c",ta1,ta2);
hannota(n-1,ta3,ta2,ta1);
}
}
需要自己在每一行代码前后加上日志时间打印。
目前查询程序执行耗时,需要自己在每一行代码前后加上日志时间打印,在代码执行后,计算这一句代码的耗时。
Idea使用精确查找技巧总结:
1、Command+N搜索类,有选项可以搜索包含jar中的类。
2、Command+Shift+N搜索文件,有选项可以设置搜索包含Jar中的所有文件。
3、Command+Shift+Alt+N搜索标号(方法、成员变量等)有选项可以设置搜索包含Jar中的所有。
4、Command+Shift+F搜索字符串,与Eclipse中的Ctrl+H一样可以搜索字符串,有一些选项可以使用。
首先要明白,晶振12MHz时,机器周期1μs。
MOV R7,#,指令周期1μs
NOP,指令周期1μs
DJNZ R,指令周期2μs
RET,指令周期2μs
为计算程序执行时间,以注释形式给每条指令加上标号
DELAY: MOV R7,#250 ;1
LOOP2: MOV R6,#200 ;2
LOOP1:NOP ;3
NOP ;4
NOP ;5
DJNZ R6,LOOP1;6
DJNZ R7,LOOP2;7
RET 8
第3、4、5、6条指令每执行一次,耗费时间3x1μs+2μs=5μs
循环200次,耗时200x5μs=1000μs
加上第2条指令耗时1μs,第7条指令耗时2μs,内层循环总耗时1000μs+1μs+2μs=1003μs
外层循环250次,总共耗时250x1003μs=250750μs
加上第1条指令耗时1μs,第8条指令耗时2μs,整个程序耗时
250750μs+1μs+2μs=250753μs≈025s
goto语句他可以跳过一些代码段,在一定程序上是可以提高程序运行速度
至于为什么避免使用,是因为他让程序的可读性变差,不利于后期维护一个项目可能编写者对于她的逻辑很直观,但是接受者就很难理顺
你能写一下你的程序吗?
srand不太耗时啊,你可能是别的地方时间太久了。
而且srand(time(NULL))在一个程序中只需执行一次啊,在main开头写一下就好了,可以看作是O(1)的。
你是不是执行次数太多了?
显示程序 放到定时器中断执行。
如果你的显示是数码管的话,我的建议是把显示程序放到定时器中断。定时器可以设置5~10ms中断一次。
如果你的显示器是液晶,你定时中断就可以弄成几百毫秒或者1s 也行。
晶振频率是12MHz,说明单周期指令的执行时间是1us;DJNZ R5,$ 这条指令是自减并判断是否为零的语句,耗时2us,因此会执行224820=4960us;同理,DJNZ R4,D2 这条指令会执行202=40us;另外,MOV R5,248 是单周期指令,执行一次耗时1us,因此 MOV R5,248 这条指令会执行120=20us;最后,MOV R4,#20 这条指令执行一次,耗时 1 us ,该程序共耗时 4960us+40us+20us+1us=5021us=5021ms;
以上就是关于win32开发中,频繁调用另一应用程序耗时较长,能否减少耗时全部的内容,包括:win32开发中,频繁调用另一应用程序耗时较长,能否减少耗时、C语言的计算耗时问题、idea如何查看代码的时间开销等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)