您的位置:首页 > 其它

The Synchronous FileSystem API for Workers-工作者的同步文件系统应用程序接口

2013-07-19 00:30 846 查看

The Synchronous FileSystem API for Workers

简介:

The HTML5 FileSystem API and Web
Workers 在各自的领域都是非常强大的。The FileSystem API终于为网络程序带来分层存储和文件I/O,workers为javascript带来真正的异步“多线程”。然而,当你使用这些API的同时,你可以做一些真正有趣的应用程序。

本教程利用在工作者中的HTML5 文件系统提供指导和代码示例,假定这两个API都是正常运行的。如果你还没准备好学习或者对学习更多的API不感兴趣。阅读这两个讨论的教程: Exploring
the FileSystem APIs and Basics of Web Workers.

同步与异步的API:

使用异步的API是艰难的,因为它们确实很盘大,很复杂。但其实最令人沮丧的是,它们提供的东西在很多情况下会报错。过去你要处理的是在一个已经同步的世界里面的一个复杂的异步API。现在有个好消息,文件系统API定义一个同步的版本,以缓解在web worker身上的负担。
大部分情况下,同步的API就跟异步API是表兄弟一样。方法、属性、功能和函数将是很令人熟悉的。主要不同的是:

同步API只能用于一个worker,而异步API可以用于多个worker。

回调函数在外部:API方法现在返回一个值。

在window对象里面的方法(
requestFileSystem()
and
resolveLocalFileSystemURL()
)变成
requestFileSystemSync()
and
resolveLocalFileSystemSyncURL()。
PS:这些方法是worker全局范围内的成员,不是全局对象。

除了这些不同,API基本是相同的。好吧,让我们开始吧。

Requesting a filesystem——请求一个文件系统。

一个应用程序通过一个web worker发送请求到
LocalFileSystemSync
对象来访问同步文件系统。The requestFileSystemSync()显示在worker的全局范围内。


var fs = requestFileSystemSync(TEMPORARY, 1024*1024 /*1MB*/);


注意现在我们使用的同步API以及缺乏成功和错误回调,返回的新的值。

与普通的文件系统API,方法为前缀的时候。
self.requestFileSystemSync = self.webkitRequestFileSystemSync ||
self.requestFileSystemSync;


原文地址:http://www.html5rocks.com/en/tutorials/file/filesystem-sync/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐