android 多线程上传文件,Android HTML5多线程&文件上传

WebWorker,EventSource,Ajax,WebSocket,WebRTC共同构成网络生态中主要的部分,WebWoker多线程的出现,使得Javascript更容易实现异步编程,特别是在耗时任务使得Javascript更加健壮。

一.支持多线程和本地数据存储

支持LocalStorage数据存储

webview.getSettings().setDomStorageEnabled(true);

webview.getSettings().setAppCacheMaxSize(1024*1024*25);

String appCachePath = ctx.getApplicationContext().getCacheDir().getAbsolutePath();

webview.getSettings().setAppCachePath(appCachePath);

webview.getSettings().setAllowFileAccess(true);

webview.getSettings().setAppCacheEnabled(true);

2.支持多线程(Wokers与ShareWorker API)

settings.setAllowFileAccess(true);

settings.setAppCacheEnabled(true);

settings.setAllowContentAccess(true);

settings.setAllowFileAccessFromFileURLs(true);

二.实现多线程

1.实现workers.js子线程

var i=0;

function timedCount()

{

i=i+1;

self.postMessage(i);

setTimeout("timedCount()",500);

}

self.onmessage = function(event) {

var method = event.data.method;

var args = event.data.args;

self.postMessage({method: method, reply: args });

};

timedCount();

在html5中实现WebWorker的调用该

if(!!window.Worker&& typeof(Worker)!=="undefined")

{

window.worker = new Worker("./workers.js");

window.worker.onmessage = function (event)

{

console.dir(event.data);

document.querySelector('#span_title').innerHtml = event;

};

worker.onerror(function(event) {

console.log(event);

});

}else{

alert('不支持 Web Worker');

}

window.onbeforeunload = function()

{

window.worker.terminate();

}

2.当然,同一个页面也能实现主线程与子线程通信

重点:

html>

addEventListener('message', function() {

postMessage('Work done!');

}, false);

(function() {

var blob = new Blob([document.querySelector('#worker').textContent]);

var url = window.URL.createObjectURL(blob);

var worker = new Worker(url);

worker.addEventListener('message', function(e) {

console.log(e.data);

}, false);

worker.postMessage('');

})();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值