要实现函数内每隔5秒js匿名函数调用自己己这个函数,100次以后停止,怎么办

4867人阅读
Java(37)
假设一个Class的方法 a,被限定30秒内只能被调用100次,如何实现。
当时没答上,回来补上 &&
1、定义调用接口Icallee
public interface Icallee {
public void play();
2、实现调用接口类
public class Callee implements Icallee {
public void play() {
// TODO Auto-generated method stub
System.out.println(& Hello...The method is being called. &);
3、限制一段时间内方法调用次数类
public &class CheckCalledTimesInPeriod {
private I&
private &int limitT
private &long startM
private &int limitC
// record the times that be called
static private int count = 0 ; &
public CheckCalledTimesInPeriod(int minute,long startMills,int limitCount){
& & & &this.limitTime=
& & & &this.startMills = startM
& & & &this.limitCount = limitC & &&
& & & &callee = new Callee();
//Limit the times that be called for a period
public &synchronized void execute(){
& & long nowMills = System.currentTimeMillis(); &
& & count++;
& & if(nowMills&=(startMills+limitTime*60000)&&count&=limitCount)&
& & callee.play();
& & //to Log the times
& & Calendar c = Calendar.getInstance();&
& & DateFormat format = new SimpleDateFormat(&yyyy-MM-dd hh:mm:ss&);
& & CallerRunning.sb.append(&You are calling = &+count+& times. The time is = &+format.format(c.getTime())+&\r\n&);
System.out.println(&You are calling &+count+& times.&+&The Time is = &+format.format(c.getTime()));
4、测试运行类
public class CallerRunning {
// to store the log &data &
static public & StringBuffer sb = new StringBuffer();
* @param args
public static void main(String[] args) {
& & & & long startMills = System.currentTimeMillis();
& & long nowMills = startM
& & //call a method 60000 times in 1 minute&
& & CheckCalledTimesInPeriod called = new CheckCalledTimesInPeriod(1, startMills, 60000);
& & //to log the running time
& & Calendar c = Calendar.getInstance();&
DateFormat format = new SimpleDateFormat(&yyyy-MM-dd hh:mm:ss&);
& &sb.append(&begin time is = &+format.format(c.getTime())+&\r\n&);
& &//test run &in 6 second
& & while(nowMills&=(startMills+6000))
& & & & & nowMills = System.currentTimeMillis();
& & & & & called.execute();
& & //to write the log to txt
& & Calendar d = Calendar.getInstance();&
& & sb.append(&end time is = &+format.format(d.getTime())+&\r\n&);
& & writeTxt(&C:\\test.txt&, sb.toString());
public static void writeTxt(String filePath, String content){
& & & &try { &
& & & & & &File f = new File(filePath); &
& & & & & &if (!f.exists()) { &
& & & & & & & &f.createNewFile();// 不存在则创建 &
& & & & & &} &
& & & & & &BufferedWriter output = new BufferedWriter(new FileWriter(f)); &
& & & & & &output.write(content); &
& & & & & &output.close(); &
& & & &} catch (Exception e) { &
& & & & & &e.printStackTrace(); &
& & & &} &
5、TXT文件结果 LOG&
begin time is =
You are calling = 1 times. The time is =
You are calling = 2 times. The time is =
You are calling = 3 times. The time is =
You are calling = 4 times. The time is =
You are calling = 5 times. The time is =
You are calling = 6 times. The time is =
You are calling = 7 times. The time is =
You are calling = 8 times. The time is =
You are calling = 9 times. The time is =
You are calling = 10 times. The time is =
You are calling = 11 times. The time is =
You are calling = 12 times. The time is =
You are calling = 13 times. The time is =
You are calling = 14 times. The time is =
You are calling = 15 times. The time is =
You are calling = 16 times. The time is =
You are calling = 17 times. The time is =
You are calling = 18 times. The time is =
You are calling = 19 times. The time is =
You are calling = 20 times. The time is =
You are calling = 21 times. The time is =
You are calling = 22 times. The time is =
You are calling = 23 times. The time is =
You are calling = 24 times. The time is =
You are calling = 25 times. The time is =
You are calling = 26 times. The time is =
You are calling = 27 times. The time is =
You are calling = 28 times. The time is =
You are calling = 29 times. The time is =
You are calling = 30 times. The time is =
You are calling = 31 times. The time is =
You are calling = 32 times. The time is =
You are calling = 33 times. The time is =
You are calling = 34 times. The time is =
You are calling = 35 times. The time is =
You are calling = 36 times. The time is =
You are calling = 37 times. The time is =
You are calling = 38 times. The time is =
You are calling = 39 times. The time is =
You are calling = 40 times. The time is =
。。。。。。。。。。。。。。。。。。。。。。。。。。。。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1393722次
积分:14425
积分:14425
排名:第818名
原创:127篇
转载:123篇
译文:123篇
评论:124条
(2)(5)(1)(2)(7)(1)(3)(3)(7)(7)(4)(13)(1)(2)(2)(2)(1)(6)(5)(2)(9)(6)(14)(25)(3)(1)(1)(1)(1)(1)(12)(2)(2)(4)(1)(1)(2)(6)(2)(2)(1)(2)(8)(5)(19)(13)(7)(2)(4)(2)(2)(12)(1)(3)(2)(1)(4)(9)(12)(6)(1)(5)(2)(3)(13)(7)(20)(42)(30)(1)(2)根据列表和题意,设解析式为,代入列表对应值,即可得到解析式.设销售额是,根据题意列方程:,具体把,用关于的代数式代换记得到函数式,求出顶点坐标横坐标,其绝对值即为楼盘第几月售房销售额最大;根据所求的解析式,结合的题意求出去年月份的销量及房价和今年月份的销量,列出方程,即可解除.
设解析式为,依据题意,把两点代入解析式得:,解得:,解析式为;设销售额为,根据题意列方程,,当时,的值最大;依据题意,去年月份房价:(元),去年月份月销量:(套),今年月的房间爱:元,根据题意列方程得:,令,化简方程得:,解得:(舍去),,.答:.
本题主要考查二次函数,一次函数在实际问题中的应用,关键在于找出等式关系.
3829@@3@@@@二次函数的应用@@@@@@255@@Math@@Junior@@$255@@2@@@@二次函数@@@@@@51@@Math@@Junior@@$51@@1@@@@函数@@@@@@7@@Math@@Junior@@$7@@0@@@@初中数学@@@@@@-1@@Math@@Junior@@
求解答 学习搜索引擎 | 去年下半年,某市楼市摆脱上半年萧条境况,价格一路攀高.某楼盘全是每套90平方米的户型,下半年该楼盘的房价y(元/平方米)与月份x(7小于等于x小于等于12,且x取正整数)之间关系如下表:月份x7月8月9月10月...房价(元/平方米)5600600064006800...该楼盘去年下半年的月销售量p(套)与月份x(7小于等于x小于等于12,且x取正整数)之间满足函数关系p=-2x+50.(1)请观察题中的表格,用所学过的一次函数,反比例函数或二次函数的有关知识,求出该楼盘去 年下半年房价y与月份x之间的函数关系式;(2)求在去年下半年,该楼盘第几月售房销售额最大?(3)今年1月开始房价上涨减缓,每月比上月上涨100元/m2,但月销售量在去年12月的月销售量基础上每月比上月减少3套.4月下旬,该市政府发出通知提高贷款购房条件和严格控制外地客户炒房,该楼盘预计5月份的房价与4月份相同,但5月份的销售量将比4月份下降2.5a%.预 计6月份该楼盘将降价,其房价将比5月份的房价下降0.5a%,6月份销售量将与5月份的销售量一致,但6月份最终的售房销售额将比四月份的售房销售额减少504万元,求a的值.(参考数据:\sqrt{24}约等于4.9,\sqrt{26}约等于5.1,\sqrt{27}约等于5.2)君,已阅读到文档的结尾了呢~~
接收函数方法
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
接收函数方法
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口函数调用过程是怎么实现的_百度知道
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。
函数调用过程是怎么实现的
最好介绍的详细一点,谢谢
我有更好的答案
函数类型是void型,函数名为a,无参数。然后在main()函数里面调用这个函数,该函数的作用很简单,就是输入一个整数然后再显示它,容易看懂。如果函数使用的乱七八糟,或者是没有使用函数,程序就会显得很乱,会让程序变的很乱,这涉及到参数问题,但也是事实)。一、函数的定义一个函数包括函数头和语句体两部分。函数头由下列三不分组成:函数返回值类型函数名参数表一个完整的函数应该是这样的,如果超过100行的程序中没有使用函数,那么这个程序一定很罗嗦(有些绝对,实际上就是把a()函数里面的所有内容直接搬到main()函数里面(注意,main()函数不能被别的函数所调用。通常我们把这些被调用的函数称为下层(lower-level)函数。看下面的例子:void a()。函数调用发生时;n,因为层数太多,对以后的检查有一些干扰,函数调过来调过去,这是为了以后好检查。语句体包括局部变量的声明和可执行代码。我们在前面其实已经接触过函数了,如abs();}void a(){b()。那么很多人也许就会想,那我们何必还要声明这一步呢?我们只要把所有的函数的定义都放在前面不就可以了吗?这种想法是不可取的。函数名在程序中必须是唯一的;main(){a(); /*函数调用*&#47,&num),sqrt(),我们并不知道它的内部是什么,我们只要会使用它即可,在函数调用的时候,实际参数将被拷贝到这些变量中,&num);}void a() /*函数定义*&#47,但是在这里我们并不提倡调用的层数太多(除非是递归),num);}一般来说,比较好的程序书写顺序是,先声明函数,然后写主函数、1000层;void b();main(){a()。下面主要介绍无参数无返回值的函数调用。二、函数的声明和调用为了调用一个函数,可以让程序看起来有条理,那么我们自己定义的函数能不能再调用其他函数呢?答案是可以的,而a()函数又调用b()函数。在C语言里,对调用函数的层数没有严格的限制,我们可以往下调用100层;}可以看出。前面说了,在调用之前,必须先声明函数,所以下面的做法也是正确的(但在这里我个人并不提倡)。main(){void a();a();}void a(){scanf(%d、或者是某个数据类型的指针、指向结构的指针、指向数组的指针。指针概念到以后再介绍;}main()函数先调用a()函数C程序的基本单元是函数。函数中包含了程序的可执行代码,必须事先声明该函数的返回值类型和参数类型,这和使用变量的道理是一样的(有一种可以例外,就是函数的定义在调用之前,并不关心它内部的实现细节。当然程序员也可以自己开发函数库。说明一点。每个C程序的入口和出口都位于函数main()之中。main()函数可以调用其他函数;}因为定义在调用之前,所以可以不声明函数,这是因为编译器在编译的时候,已经发现a是一个函数名,是无返回值类型无参数的函数了;{scanf(%d:函数返回值类型 函数名(参数表){语句体;}函数返回值类型可以是前面说到的某个数据类型,num);}在main()的前面声明了一个函数,这些函数执行完毕后程序的控制又返回到main()函数中:void a(); /*函数声明*&#47,看上面的例子,好象使用函数后,程序变的更长了,更不让人理解。可以这样说,它也遵循标识符命名规则,如果不使用函数;scanf(%d,&num);printf(%d\n,num);scanf(%d,&num);printf(%d\n,num),一个好的程序员总是在程序的开头声明所有用到的函数和变量。当然,我举的这个例子的确没有必要用函数来实现,但是对于某些实际问题,不仅让别人无法查看,下面再讲述)。看一个简单的例子。如果函数使用的恰当,然后再写那些自定义的函数。既然main()函数可以调用别的函数;printf(%d&#92。在调用函数之前声明了该函数其实它和下面这个程序的功能是一样的:main(){int num,容易让自己都晕头转向。某些人可能就不明白了;}main(){a();}void b(){scanf(%d,&num);printf(%d\n,num);printf(%d\n,就连自己也容易晕头转向,函数这一节很重要,可以说一个程序的优劣集中体现在函数上,这句话不是绝对的。)我们前面已经说了,当定义在调用之前时,可以不声明函数。所以上面的程序和下面这个也是等价的:void a(){int num。参数表可以没有也可以有多个,立即执行被调用的函数,而调用者则进入等待状态,直到被调用函数执行完毕。函数可以有参数和返回值。程序员一般把函数当作“黑箱”处理
你这答案太坑爹了吧,这么长都是复制的,没点实质内容
对啊(是从课件上拷贝下来的)!那你要什么?函数定义、声明、调用,就是这样啊!当程序运行到某个节点时,如果发现有函数调用语句(函数要事先声明或者事先定义),程序就自动保存当前程序运行的各个参数、变量到堆栈中去,然后利用所给函数参数调用该函数并运行得出结果,并且将结果保存到内存寄存器中,然后程序自动返回函数调用前的节点处,再将堆栈中的数据出栈,然后再继续运行后面的程序!(其实质就是压栈然后再出栈的操作。当程序检测到有函数调用语句时,自动将汇编语言的中断程序复制到相应的代码段并执行)
这应该是上面内容的高度浓缩啦!其实仔细阅读上面的内容对于理解函数调用很有用!
采纳率:24%
你是指什么语言
啥语言都一样啊。。我是想问怎么保存状态,怎么压栈,怎么返回原函数
要有语言才能对症下药,像e,pascal,vbs调用又不一样
其实就是压栈弹栈的问题。
为您推荐:
其他类似问题
您可能关注的内容
函数调用的相关知识
等待您来回答

我要回帖

更多关于 js每隔1s执行一次函数 的文章

 

随机推荐