多线程入门2-创建线程

admin2020-12-08  2.2K+

创建线程


一个线程会排队执行一系列的编程指令,但一个线程同时只能做一件事。
例如在界面上有耗时的操作在执行时 - 就不能同时处理其他的界面消息或者响应用户的操作。
这时候我们就要使用多线程来完成我们的任务。

我们假设有一个耗时操作是这样的:

//下面这个函数执行耗时操作
doSomething = function( str ){

    for(i=1;100){
        str = str + " " + i;
        sleep(100)
    }
   
    return 123;
   
}

一般我们直接调用这个函数会是这样写:

doSomething( "也可以有参数什么的" )

如果希望写复杂一点调用这个函数,我们也可以这样写:

invoke(doSomething ,,"也可以有参数什么的" )

如果我们希望创建一个新的线程来调用这个函数,那么就需要下面这样写:

thread.invoke(doSomething ,"也可以有参数什么的" )

切记不要犯一个低级错误:
如果把创建线程的代码改为 thread.invoke( doSomething("也可以有参数什么的") )
这是在创建线程前就调用函数了,实际执行的代码是 thread.invoke( 123 ) 这肯定会出错的。

转载请注明原文地址: https://aardio.net/read-32.html
最新回复(0)
多线程(thread)
多线程(thread)