当前位置: 首页 > news >正文

外贸建站服务器怎么选网站后台登录代码

外贸建站服务器怎么选,网站后台登录代码,佛山外包网站建设,石家庄营销策划公司排名zk ui异步UI更新非常有用#xff0c;因为它们通常可以提高响应性#xff0c;可用性和用户界面的总体感觉。 我将在这里重点介绍ZK框架#xff0c;但是通常#xff0c;相同的原理也适用于桌面UI#xff08;Swing#xff0c;SWT#xff09;。 长时间运行的处理 有时您可能… zk ui 异步UI更新非常有用因为它们通常可以提高响应性可用性和用户界面的总体感觉。 我将在这里重点介绍ZK框架但是通常相同的原理也适用于桌面UISwingSWT。 长时间运行的处理 有时您可能需要进行数据库查询或者需要很长时间才能进行外部Web服务调用。 通常这些作业是同步的因此基本上在代码中有一个特定的点系统将必须等待结果并阻塞运行代码的线程。 如果最终在UI线程中运行了这样的代码则通常会完全阻塞UI。 实时更新 有时您不预先知道应更新UI中的某些内容的确切时间。 例如您可能有一个可视仪表用于显示应用程序中的用户数量。 当新用户进入应用程序时应尽快更新当前用户的UI以反映新用户数。 您可以使用基于计时器的机制来连续检查用户数量是否已更改但是如果同时存在的用户过多则即使UI中没有实际更新的内容连续检查也将导致非常重的负载。 基本概念 让我们首先摘录此博客文章的标题“异步UI更新和后台处理” 后台处理 在长时间运行的处理用例中减少UI阻塞的最明显方法是将昂贵的处理从UI线程转移到某些后台线程。 能够理解哪种线程将在应用程序的不同部分中运行代码非常重要。 例如在ZK应用程序中大多数代码由servlet线程执行这些线程基本上是servlet等效于UI线程的世界。 为了在某​​些后台线程中执行代码我们需要一个线程池。 最简单的方法是使用JDK5中引入的java.util.concurrent.ExecutorService。 我们可以将Runnable对象推送到ExecutorService因此我们基本上是在要求ExecutorService在某些后台线程中运行特定的代码块。 绝对关键的是使用ThreadLocals的框架会遇到这种方法的问题因为在servlet线程中设置的ThreadLocals在后台线程中将不可见。 一个例子是Spring Security默认情况下使用ThreadLocal来存储安全上下文用户身份其他东西。 异步UI更新 在这种情况下异步UI更新意味着什么 基本上这个想法是一旦我们有了一些要在UI中呈现的信息我们就会通知UI新数据异步而不是直接在后台线程中更新UI同步。 我们无法事先知道新信息何时可用因此我们无法从客户端请求信息除非我们使用昂贵的轮询。 服务器推送ZK 使用ZK基本上我们可以使用两种不同的方法来在后台线程获取新信息后更新UI。 名称“服务器推送”来自以下事实服务器具有一些必须推送到客户端的新数据而不是典型的工作流程客户端向服务器询问信息。 首先您可以通过使用Executions.activate / deactivate抢占对桌面的独占访问权限来进行同步更新。 我个人不鼓励这样做因为一旦您拥有独占访问权UI线程将不得不等待直到停用桌面。 这就是为什么我在这篇博客文章中根本不会介绍这种方法的原因。 另一方面异步更新是通过使用Executions.schedule完成的它符合常规事件处理的Event / EventListener模型。 这个想法是我们可以将普通的ZK Event对象推送到EventListeners客户端将被告知这些事件。 之后ZK使用Java脚本执行正常的AJAX请求事件将由EventListeners处理。 这意味着如果我们使用异步更新则所有实际的事件处理将由Servlet线程完成并且所有ThreadLocals照常可用。 这使编程模型非常简单因为您只需要普通的事件侦听器方法而无需复杂的并发编程。 这是一个小例子 public class TestComposer extends GenericForwardComposer {private Textbox search;public void onClick$startButton() {if (desktop.isServerPushEnabled()) {desktop.enableServerPush(true);}final String searchString search.getValue();final EventListener el this; // All GenericForwardComposers are also EventListeners// Dont do this in a real-world application. Use thread pools instead.Thread backgroundThread new Thread() {public void run() {// In this part of code the ThreadLocals ARE NOT available// You must NOT touch any ZK related things (e.g. components, desktops)// If you need some information from ZK, you need to get them before this code// For example here Ive read searchString from a textbox, so I can use the searchString variable without problemsString result ... // Retrieve the result from somewhereExecutions.schedule(desktop, el, new Event(onNewData, null, result));}};backgroundThread.start();}public void onNewData(Event event) {// In this part of code the ThreadLocals ARE availableString result (String) event.getData();// Do something with result. You can touch any ZK stuff freely, just like when a normal event is posted.} } 在下一部分中我将向您展示如何使用JDK5 ExecutorServices运行任务而无需手动创建线程。 如果您真的想了解ZK服务器推送还应该阅读相关的ZK文档 。 祝您编程愉快别忘了分享 参考 Advanced ZK异步UI更新和后台处理– Jawsy Solutions技术博客博客上的JCG合作伙伴 Joonas Javanainen的第1部分 。 翻译自: https://www.javacodegeeks.com/2012/09/advanced-zk-asynchronous-ui-updates-and.htmlzk ui
http://www.huolong8.cn/news/49849/

相关文章:

  • 网站建站网站wordpress 分页文章静态化
  • 反网站搭建一条龙廊坊网站公司
  • 如何获取网站js图片阿玛尼手表
  • 苏州建站仿站o2o网站建设咨询
  • 做企业信用贷的网站西宁市建设网站公司电话
  • 广东建设厅的网站查询中国空间雷达卫星
  • 视频网站的制作教程讲究 网站
  • 网站迁移后 域名郑州高端网站定制公司
  • 长沙做网站建设行政单位单位网站建设
  • 香河做网站网站如何做分站
  • 淘宝导购网站备案如何登录中国建设银行网站
  • 建设网站价钱郑州网站推广公司服务
  • 厦门网站建设方案优化企业网站的首页设计
  • 大唐工作室 网站制作大连制作网站公司
  • 医疗保险网站开通建设wordpress为什么流行
  • 郑州网站建设公司 排行西安建筑科技大学华清学院教务网
  • 写文章的网站网站的赚钱方式
  • flas网站开发工具免费的网站软件正能量推荐
  • 企业彩铃制作网站环境设计专业就业方向
  • 建设网站用动态ip还是静态ip网站导航图怎么做的详细步骤
  • 网站别人备案怎么办网站建设的主要客户群体
  • 用手机怎么看自己做的网站网页设计网站规划报告
  • 学校门户网站建设方案织梦做的网站被黑了
  • 网站的主流趋势图片压缩wordpress
  • 淮安做网站卓越凯欣wordpress 物流主题
  • 漳州微网站建设价格我要做个网站该怎么做
  • 网站建设的几个要素企业标准官网入口
  • 网站搭建徐州百度网络数据采集发布 wordpress
  • 太原网站运营优化wordpress 响应分页
  • 万户网站天下win7和wordpress