1

您认为哪种操作最快且负载更少,LRweb_reg_find()还是 C strstr()?对于非常强的负载测试,哪个更可取?

如果有人知道它是如何web_reg_find()工作的,请告诉我。

4

1 回答 1

0

使用 strstr,您必须拉取页面上的每个组件,并在下载后针对缓冲区中的字符串显式搜索。使用 web_reg_find() 您正在设置一个过滤条件,页面上的每个响应组件都会通过该过滤条件。

如果您选择 strstr() 路由,您仍然需要下载页面组件,然后对每个组件运行检查。您将使用更多内存,除非您非常擅长内存管理,否则您有时可能会错过 free() 并引入内存泄漏情况,即您迫于压力将脚本拿出来成为常见的一面影响。使用 web_reg_find() 您可以让它与页面下载同时进行,而不会降低页面下载本身的速度。

我不确定阿德里亚诺在哪里对一个与另一个的原始性能进行了研究,因为两者的操作是如此不同,因为 web_reg_find() 甚至可以在 strstr() 启动之前完成 - 我必须下载并填充在我可以搜索之前要搜索的缓冲区。

于 2012-10-25T14:03:50.437 回答