【问题标题】:HtmlUnit Synchronization with JS Executor threadHtmlUnit 与 JS Executor 线程同步
【发布时间】:2011-12-23 06:04:13
【问题描述】:

请多多包涵,因为我对 Java 相对较新,甚至对 HtmlUnit 也较新。我想知道是否有办法将主线程与htmlunit的js执行线程同步?问题是我想读取元素文本值,而更新这些值的 ajax 请求在后台运行。

不修改HtmlUnit的源代码就可以做到吗?

【问题讨论】:

    标签: multithreading htmlunit


    【解决方案1】:

    我不确定这是否正是您要查找的内容,但您可以在 HtmlUnit 的 WebClient 上设置 NicelyResynchronizingAjaxController,它会自动将您的所有异步调用转换为同步调用。这使您无需轮询或休眠任意时间即可测试您的 AJAX 代码,希望 AJAX 调用已完成。它不是适用于所有情况的解决方案,但通常非常有用。

    【讨论】:

    • 感谢您的回复。我正在尝试编写一个简单的实时屏幕抓取代码。我有一个无限(用户可中断)循环,我在其中检查 HtmlDOM 是否有特定节点的更改,如果我看到这些更改,我会记录它们的一些子节点的文本值。但是,有时似乎循环中的代码正在访问 HtmlDOM,而后台 javascript 仍在更新相同的节点。这会导致崩溃。我想我可以使用 DOMChangeListener 但它仍然会与后台 JS 线程同步吗?
    猜你喜欢
    • 1970-01-01
    • 2013-03-18
    • 1970-01-01
    • 1970-01-01
    • 2015-09-20
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    相关资源
    最近更新 更多