问题标签 [chunking]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ajax - HTML5 File API 和 AJAX Upload Chunking 问题
我已经写了一个拖放多个文件上传与单独的进度等。它工作得非常好,除了一件事。上传较大的文件时,有时浏览器会锁定,直到上传完成。我认为这是因为该文件存储在浏览器的内存中并占用了浏览器可用的所有资源。我想知道的是,是否可以逐个读取文件并在读取块时通过 Ajax 请求流式传输这些块?我认为这可能与 FileReader 一起使用,但我还没有使用它。
很抱歉,我无法在智能手机上提供任何代码,但如果需要,我会在有机会时发布一些代码。
python - 有没有办法使用 nltk 在一个标记的句子中对一个标记的 2 个或多个重复进行分块?
我正在尝试使用 python 中的 nltk 模块将任何两到五个名词按顺序出现的实例组合在一起。
这是我正在使用的代码:
我觉得这一点应该可以解决问题:Keyword: {< N>{2,5}}
我什至在使用 Python 的自然语言处理一书中找到了一个完全类似地使用上述代码的示例:NOUNS: {< N.*>{4,}}
作者解释说,该代码应该分块 4 个或更多名词。
但是,当我运行上述代码时出现错误:
注意:我也尝试了上述使用{< N.*>{2,5}}
(仅因为上述书的作者使用点星),但没有运气。
任何有关如何分块两个或多个标签重复的帮助将不胜感激。
http - 在 IIS 7.0 上的 CGI 可执行 EXE 中使用 NPH 模式 - 这可以是“实时的”吗?
我正在编写一个原型 CGI 应用程序以在 IIS 7.0 服务器上运行,这最终将导致该应用程序发送许多 http 分块响应,这些响应是为响应可能需要一些时间来生成实际数据的查询而生成的。
在深入研究这方面(即生成真实数据)之前,我想测试我的 cgi 应用程序是否实际上在非解析头模式下运行(即 cgi 应用程序本身生成所有头文件,而 IIS 只是将所有输出返回到请求 http 浏览器/代理。
所以我写了一个简单的应用程序,它返回以下内容(注意时间戳 - 每个带时间戳的行之间有 1 秒的暂停,正如文本所暗示的那样,这需要 10 多秒才能执行 - 你实际上可以在命令行并观察这个时间。
当我在服务器上安装 exe 并在 Internet Explorer 中打开它时,会显示预期的文本(时间不同,因为我在一天中的不同时间和不同时区运行它们):
但是 - 在整个 10 秒过去之前,什么都不会显示。(注意 - 铬的结果相同)
为了确保这一点,我在文本编辑器中制作了一个 http 请求,并将其粘贴到服务器的 80 端口上的 telnet 中,并在整个响应之前观察到 10 秒的间隙,如上所示。
我得到相同的结果,无论 exe 是否具有前缀“nph-” - 我在 telnet 中执行了相同的测试,使用“nph-hello.exe”、“nphhello.exe”和“hello.exe”,使用以下内容:
(注:识别地址已针对本帖进行了调整)
(有关 exe 命名前缀的相关性,请阅读http://support.microsoft.com/default.aspx?scid=kb;EN-US;q176113下的“解决方案”下的注释,以“作为解决方法...”开头)
我似乎没有在 telnet 中观察到与 exe 名称前缀相关的任何可辨别的输出差异,这使我相信此信息要么已过时,要么需要启用其他东西才能打开此功能,这显然需要发生在 cgi 应用程序启动之前 - 这解释了为什么使用前缀而不是应用程序本身所做的事情 - 即 IIS 需要知道是否等待响应)
虽然从表面上看,它正在实现预期的结果 - 数据找到了请求 http 代理的方式 - 我希望它实时发生,因此可以在发出请求时显示进度更新。
所以我的问题:
1)是否需要进行一些设置才能打开 NPH(或者前缀是否正确?)
2)cgi 应用程序是否可以进行一些测试来判断它是否真的处于 NPH 模式?
3) 是否打算将标准输出(即响应数据)实时传送到请求代理,或者 IIS 是否必须首先以某种方式缓冲和解析它?
php - 从数组的每个单词开始在新数组中分块数组
如何从原始数组的每个单词开始在新数组中分块数组?所以每个数组的第一个字应该是前一个数组的第二个字。
例如
使用 array_chunk 会给出新的数组 (we, have), (a, good), (day, and) 等等。但我想要
java - 对于 Google App Engine (java),如何在 FetchOptions 中设置和使用块大小?
我正在运行一个查询,它当前返回 1400 个结果,因此我在日志文件中收到以下警告:
com.google.appengine.api.datastore.QueryResultsSourceImpl logChunkSizeWarning:此查询在 FetchOptions 中没有设置块大小,并且返回了 1000 多个结果。如果此大小的结果集对于此查询很常见,请考虑设置块大小以提高性能。
我在任何地方都找不到关于如何实际实现这一点的任何示例,这里有一个关于 python 的问题,但是由于我使用 java 并且不懂 python,我正在努力翻译它。
此外,这个查询(如下)需要 17226cpu_ms 来执行,这感觉太长了,我什至无法想象如果我说 5000 个联系人并且需要在客户端搜索它们会发生什么(就像你对 googlemail 联系人所做的那样! )
我的代码是:
我在这里找到了以下两个条目:
但实际上都没有详细说明如何实施或使用这些选项。我猜它是一个服务器端进程,我猜你打算设置某种循环来一次抓取一个块,但我该怎么做呢?
- 我是否在循环内调用查询?
- 我怎么知道循环多少次?
- 我是否只检查返回的第一个块小于块大小的条目数?
如果没有实际的例子可循,我怎么能找到这样的东西?在我看来,这里的其他人似乎“只知道”怎么做..!
对不起,如果我没有以正确的方式提出问题,或者我只是一个对此感到迟钝的新手,但我不知道还有什么地方可以解决这个问题!
csv - 如何在 python 3.2 中对 csv (dict)reader 对象进行分块?
我尝试使用多处理模块中的 Pool 来加快读取大型 csv 文件的速度。为此,我改编了一个示例(来自 py2k),但似乎 csv.dictreader 对象没有长度。这是否意味着我只能迭代它?有没有办法把它分块?
这些问题似乎相关,但并没有真正回答我的问题: csv.DictReader 中的行数, 如何在 Python 3 中分块列表?
我的代码试图这样做:
text - 为什么可迭代对象在 Python 中没有长度?
我想我一直在改进我之前的问题。基本上,我需要将一个大文本 (csv) 文件分块以将片段发送到 multiprocess.Pool。为此,我认为我需要在可迭代的对象中迭代行。(查看如何在 python 中多处理大型文本文件?)
现在我意识到打开文本文件后的文件对象本身(或 _io.TextIOWrapper 类型)是可逐行迭代的,所以也许我的分块代码(现在在下面,抱歉之前错过它)可以分块它,如果它可以得到它的长度?但如果它是可迭代的,为什么我不能简单地调用它的长度(按行,而不是字节)?
谢谢!
python - NLTK 分块并遍历结果树
我正在使用 NLTK RegexpParser 从标记的标记中提取名词组和动词组。
如何遍历生成的树以仅找到属于 NP 或 V 组的块?
(S(NP Carrier/NN) for/IN organization-/JJ and/CC cell-culture/JJ for/IN(NP植入/NNS)和/CC(NP植入)/IN(NP/DT制备/NN) /NN) (V 含/VBG) (NP/DT 载波/NN)./.)
haskell - 将惰性字节字符串转换为严格字节字符串
我有一个带有惰性ByteString
的函数,我希望返回严格ByteStrings
的列表(惰性应该转移到输出的列表类型)。
我想这样做是出于各种原因,几个词法函数需要 strict ByteString
,我可以保证上面ByteString
s 的输出中输出的 strictcsVal
非常小。
我如何在ByteString
不分块的情况下进行“严格化” ?
更新0
我想要一个 Lazy ByteString
,并严格ByteString
包含它的所有数据。
python - Twisted Python:最大数据包大小?冲洗插座?
我正在为服务器端实现一个基于 Twisted 的客户端-服务器解决方案,例如客户端的 Android 手机。因为 Andoird 模拟器不接受大于 1500b(或更小?)的 TCP 数据包,我需要能够在服务器端对数据包进行分块。如果没有在每次“transport.write”之后刷新套接字,Twisted 会缓冲传出数据,因此如果没有某种手动或自动刷新/maxpacketsize 功能,分块将毫无用处。我如何在 Twisted 中做到这一点?我熟悉“reactor.doSelect(1)”函数,但由于我使用的是 EPoll 反应器(出于可伸缩性和性能原因),我不能使用 doSelect。是否可以更改 Twisted 中某些连接的 maxPacketValue?
希望有人能给我指点灯...