前端 async非同步執行指令碼

2021-08-28 19:05:08 字數 793 閱讀 5614

在傳統模式下, 瀏覽器會按照從上到下的方式解析html元素 ,

解析到一直到解析完成之前都不會解析處理元素之後的內容

假設某匯入的指令碼檔案非常耗時就會導致瀏覽器無法向下執行, 

頁面將長時間顯示一片空白,這不是使用者希望看到的效果,

這時候就需要用到的async屬性了

async屬性指定的會啟動新執行緒, 非同步執行元素匯入的指令碼檔案,

瀏覽器也會繼續向下解析, 處理頁面內容

舉個例子:

測試!

var sum=0;

for(var i=0;i<100000000;i++)

sum+=i;

alert(sum);

由於js指令碼要迴圈100000000次比較耗時, 在此之前頁面一片空白:

執行完js彈框時還沒有載入body裡的內容,如上

這時候給加上async屬性:

效果如下:

其實在彈框前body中的div就顯示出來了,

這就是非同步執行的效果, 不必等待js載入完再載入後面的內容!

php 非同步執行指令碼

這裡說的非同步執行是讓php指令碼在後台掛起乙個執行具體操作的指令碼,主指令碼退出後,掛起的指令碼還能繼續執行。比如執行某些耗時操作或可以並行執行的操作,可以採用php非同步執行的方式。主指令碼和子指令碼的通訊可以採用外部檔案或memcached的方式。原理就是通過exec或system來執行乙個外...

自動執行指令碼

乙個偶然的機會,發現了自動執行指令碼的東東,真是神奇啊,可以執行sql 控制台命令等。由於研究的時間有限,所以知之甚少 先和大家分享下,哈 dim consoleprocess as new system.diagnostics.process consoleprocess.startinfo.fi...

C MFC ShellExecute執行指令碼

目前知道三種方式 winexec,shellexecute createprocess。1.阻塞式呼叫,呼叫時程序阻塞 void cmfccodedlg callshellscript cstring path,cstring fbat,cstring param shexecinfo.cbsize...