webApi 处理数据耗时很长(5分钟),我想在这个方法中创建个线程再写个方法处理这个很慢的业务可以么?大神们一般都怎么呢解决啊? [问题点数:20分,结帖人wqs15192095633]

Bbs2
本版专家分:348
结帖率 98.18%
Bbs3
本版专家分:883
Bbs2
本版专家分:348
Bbs6
本版专家分:8892
版主
Blank
榜眼 2018年总版新获得的技术专家分排名第二
Blank
金牌 2018年10月 总版技术专家分月排行榜第一
2018年9月 总版技术专家分月排行榜第一
2018年8月 总版技术专家分月排行榜第一
Blank
银牌 2018年12月 总版技术专家分月排行榜第二
2018年11月 总版技术专家分月排行榜第二
2018年7月 总版技术专家分月排行榜第二
Blank
铜牌 2019年1月 总版技术专家分月排行榜第三
Bbs3
本版专家分:797
Blank
Github 绑定github第三方账户获取
Bbs10
本版专家分:183723
版主
Blank
Github 绑定github第三方账户获取
Blank
金牌 2015年9月 总版技术专家分月排行榜第一
2015年8月 总版技术专家分月排行榜第一
2015年7月 总版技术专家分月排行榜第一
2015年6月 总版技术专家分月排行榜第一
2015年5月 总版技术专家分月排行榜第一
2015年4月 总版技术专家分月排行榜第一
Blank
银牌 2016年1月 总版技术专家分月排行榜第二
2015年11月 总版技术专家分月排行榜第二
2015年10月 总版技术专家分月排行榜第二
Blank
优秀版主 优秀小版主
Bbs2
本版专家分:348
Bbs2
本版专家分:348
关于Java框架你不得不思考的一些问题
第一站:多个<em>线程</em>同时读写,读<em>线程</em>的数量远远⼤于写<em>线程</em>,你认为应该如何<em>解决</em> 并发的问题?你会选择加什么样的锁?JAVA的AQS是否了解,它是⼲嘛的?除了synchronized关键字之外,你是怎么来保障<em>线程</em>安全的?什么时候需要加volatile关键字?它能保证<em>线程</em>安全吗?<em>线程</em>池内的<em>线程</em>如果全部忙,提交⼀个新的任务,会发⽣什么?队列全部 塞满了之后,还是忙,再提交会发⽣什么?Tomcat本身的参数你⼀...
android:最好不要在onPause去执行耗时操作
MainActivity打开SecondActivity的生命周期 <em>可以</em>看出先执行MainActivity的onPause,接着执行SecondActivity的onCreate,onStart,onResume,再执行MainActivity的onStop<em>方法</em> 一些<em>耗时</em>操作不要在onPause<em>方法</em>中去执行,尽量在onStop<em>方法</em>中执行,从而使新的Activity尽快的显示出来....
使用Thread来实现耗时操作和刷新UI
实现原理: <em>创建</em>一个Thread对象,然后在其run<em>方法</em>中调用runOnUiThread<em>方法</em>,在run中执行<em>耗时</em>操作,在runOnUiThread<em>方法</em>执行<em>耗时</em>操作完成后需要更新的UI,不要忘记调用Thread的start<em>方法</em>。我此处是在模拟<em>耗时</em>操作的时候让其显示了一个进度条,在<em>耗时</em>操作结束时让进度条消失,具体逻辑<em>可以</em>更具自己的<em>业务</em>需求。 代码: import android.app.Acti
在BroadCastReceiver的onReceive方法中执行耗时操作的正确姿势
经常听说在onReceive中执行<em>耗时</em>操作要开个Service,不要用子<em>线程</em>。   原因嘛,BroadCastReceiver只在onReceive<em>方法</em>执行时是激活状态,只要onReceive一返回,它即为失活状态。Receiver进程是被一个激活状态的BroadCastReceiver所保护而不被系统终止的,一旦onReceive返回,Receiver进程变为一个空进程,空进程是<em>可以</em>在任意
onReceive中完成一项比较耗时的工作 , 应该启动 Service 来完成 ,不能使用子线程解决!!!
Android 中的BroadCastReceiver                                                 作者:阿福       BroadCastReceiver 简介 (末尾有源码) BroadCastReceiver 源码位于: framework/base/core/java/android.content.BroadcastRec
最简单解决c#在UI线程中执行耗时方法导致界面假死的方法
int sta = my_connect.login(_user_name, _password);如上,login<em>方法</em>中通过http向服务器发请求,在网络状况不好或者服务器繁忙的时候,会因为迟迟等不到返回结果导致页面假死。<em>解决</em>办法:int sta = await Task.Run(() => { return my_connect.logi
一个线程进入一个对象的一个synchronized方法,其他线程是否还可以进入该对象的其他方法...
基本的<em>线程</em>同步块 只是使用对象 不存在你说的什么类锁(这里 先不讨论JDK1.5的同步工具包里面的那个Lock 就说synchronized 块) static同步<em>方法</em>是用的是当前类的Class对象(java.lang.Class <em>这个</em>对象在做反射的时候) 也就是说 --------------------------------- 一种是对象锁,类A中同步块和f1(),共用对象锁,所以...
java测试程序耗时的工具类
测试程序<em>耗时</em>的工具类,<em>可以</em>满足: 1、在程序里直接测试代码块的<em>耗时</em>,打印到后台 2、细化代码块,记录每个小功能的<em>耗时</em>,存入表中  直接对比 建表 oracle -- Create sequence create sequence tangcq_SEQUENCE minvalue 1 maxvalue 9999999999999999999999999999 start with
不要在广播的onReceive()方法中执行耗时操作
不要在onReceive()<em>方法</em>中添加过多的逻辑或执行<em>耗时</em>操作,因为onReceive()<em>方法</em>运行在主<em>线程</em>中,<em>耗时</em>操作会导致ANR。 同时,广播接收器中不允许开启子<em>线程</em>: 对于静态注册的广播接收器来说,广播接收器对象的生命周期较短,执行完onReceive()<em>方法</em>就会变为垃圾对象而被回收,在子<em>线程</em>执行完之前,若对应的Activity退出,他们所在进程就变成了空进程(没有任何活动组件的进程),系...
关于Service中的耗时操作
由于Service和Broadcast一样,都运行在主<em>线程</em>中,所以在这两个里面我们无法做一些长时间的<em>耗时</em>操作,也就是说,如果我们有一个后台服务,是每隔一段时间请求一次服务器,类似于心跳服务,只是没有心跳服务那么频繁,例如每2个小时执行一次连接服务器操作,这样的话,我们的应用可能已经退出了,而我们仍需要<em>这个</em>服务时开启的,这种情况,我们第一反应是让Service运行在一个独立的进程中,这一点是<em>可以</em>做到
耗时的操作放入handler中进行处理
// 初始化recList public void initRecList() { new Thread() { public void run() { try { sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } doInH...
能不能自己写一个类叫java.lang.String
添加链接描述
GUI类 只能在主线程中被使用,不能跨线程使用
此外,QWidget及其子类,以及所有其它 GUI 相关类(即便不是QObject的子类,例如QPixmap),甚至不是可重入的:它们只能在 GUI <em>线程</em>访问。
Netty学习之耗时业务处理逻辑设计
我们在学习和使用Netty的过程中会按照我们以往的BIO方式来进行代码设计,这是惯性思维,虽然我们知道Netty是基于NIO设计的异步非阻塞框架,但是并不是仅仅通过Boss<em>线程</em>池和Worker<em>线程</em>池配置好其他的我们就不管了,Netty就替我们全做了。Netty只是替我们做好了<em>业务</em>接收和调度,并没有直接提供<em>业务</em><em>处理</em>的相关<em>线程</em>,我们<em>可以</em>直接将<em>业务</em>写在Netty的IO<em>线程</em>池中,但是这样会影响<em>线程</em>的读写,...
JAVA多线程并发处理方式
 Synchronized和ThreadLocal方式: Synchronized关键字主要<em>解决</em>多<em>线程</em>共享<em>数据</em>同步问题。  ThreadLocal使用场合主要<em>解决</em>多<em>线程</em>中<em>数据</em>因并发产生不一致问题。 ThreadLocal和Synchonized都用于<em>解决</em>多<em>线程</em>并发访问。但是ThreadLocal与synchronized有本质的区别:        Synchroni
谈长耗时任务的优化
以一个真实的案例来谈对于一个长<em>耗时</em>的任务或者<em>业务</em>逻辑有哪些常用的优化手段。
文件上传 耗时特别长
http 文件上传  在ie浏览器下 <em>耗时</em>特别长 当使用 HTTP 文件上载功能上载大小为几兆字节的文件时,上载操作需要<em>很长</em>时间才能完成。     项目中做了个上传视频的文件的功能,在firefox浏览器下 试了下 上传个500m个文件 <em>耗时</em>1:10秒  感觉还<em>可以</em>接受。 但是在Ie浏览器下 却要四分多钟, 特别的慢, 但是查看代码 也没发现有什么问题啊。  该设置缓冲区的地方 设
使用IntentService在Service中创建耗时任务
IntentService是Service的子类,比普通的Service增加了额外的功能。 Service存在两个问题: 1,Service不会专门启动一条单独的<em>线程</em>,Service与它所在应用访问者位于同一条<em>线程</em> 2,Service也不是专门一条新<em>线程</em>,因此不应该在Service中直接<em>处理</em><em>耗时</em>任务 IntentService的特点: 1,IntentService将会使用队列来管理请求
iOS对耗时操作的处理方法
在项目中经常会遇到比较<em>耗时</em>的操作导致界面卡顿,<em>可以</em>尝试使用GCD异步方式<em>处理</em>: dispatch_async(dispatch_get_global_queue(0, 0), ^{ // <em>处理</em><em>耗时</em>操作在此次添加//通知主<em>线程</em>刷新 dispatch_async(dispatch_get_main_queue(), ^{ //在主<em>线程</em>刷新UI }); });
mdeploytool使用遇到问题,请问各位大神如何解决
在实现matlab 2017a和VS2013混合编程的时候出现了一个问题: matlab调用deploytool 选择C++ shared Library打包是显示“打包期间出错”。 请问如何<em>解决</em> Microsoft ® Manifest Tool version 6.3.9600.16384 Copyright © Microsoft Corporation 2012. All rights r...
Android Studio 编译耗时解决方法
Android Studio 编译速度慢
java针对一个资源,创建多个线程处理同一个事件
//针对一个资源,<em>创建</em>多个<em>线程</em>来<em>处理</em>同一个事件, //此处用车站售票系统· package 课外体例; public class StationSystem { public static void main(String[] arg) { Thread t = new Thread(new Tickets()); //Tickets t = new Tickets();
当一个API中具有多个相同请求的方法时的解决方案
//当一个API中具有多个相同请求的<em>方法</em>时<em>可以</em>使用下列两个特性来<em>解决</em>(这里以POST请求为例) [HttpPost] //首先声明该API的请求方式 [Route(&quot;api/Post/One&quot;)] //然后指定该API的具体访问地址 namespace Specialty.API.Controllers { public class PostController : ApiCo...
关于java多线程中同步的问题(两个线程访问同一个实例类的两个同步方法,会不会互相影响)
      题目有点长,不知道大家能不能明白!      首先得出的结论是:               它们是互相影响的,因为在一个实例类中同步<em>方法</em>锁定的是该实例类对象,因此会互相影响.        下面是我做的一个测试:              (1)<em>创建</em>一个实例类:                          package com.lenove.testThread;      
android 直接在activity/broadcast receiver中启动子线程处理长时间的耗时任务不行吗?
如果开发者需要在Service<em>处理</em><em>耗时</em>任务,建议在Service中另外启动一条新<em>线程</em>来<em>处理</em>该<em>耗时</em>任务.就像前面BindService中看到的,程序在BindService中 的。nCreate()<em>方法</em>中启动了一条新<em>线程</em>来<em>处理</em><em>耗时</em>任务.可能有读者感到疑惑: 直接在其他程序组件中启动子<em>线程</em>来<em>处理</em><em>耗时</em>任务不行吗?这种方式也不可靠, 由于^ctivity可能会被用户退出,Broadcast Rece
Spring如何处理线程并发问题
Spring如何<em>处理</em><em>线程</em>并发问题?Spring使用ThreadLocal<em>解决</em><em>线程</em>安全问题 我们知道在<em>一般</em>情况下,只有无状态的Bean才<em>可以</em>在多<em>线程</em>环境下共享,在Spring中,绝大部分Bean都<em>可以</em>声明为singleton作用域。就是因为Spring对一些Bean(如RequestContextHolder、TransactionSynchronizationManager、LocaleConte
使用多线程来执行业务,降低方法耗时
import org.junit.Test; import java.util.concurrent.*; /** * @author peter * 2019/1/4 16:58 */ public class ThreadTest { @Test public void test() throws InterruptedException, ExecutionExce...
java多线程处理业务
public class Test { private static int count = 0; public static ApplicationContext ac = new ClassPathXmlApplicationContext("spring.xml"); static { PropertyConfigurator.configure("config/log4j.
Java基础:异常处理程序
前言 假设在一个Java程序运行期间出现一个错误。<em>这个</em>错误可能是由于文件包含了错误信息或者网络连接出现问题造成的,也有可能是因为使用无效的数组下标,或者试图使用一个没有被赋值的对象引用造成的。用户希望在出现错误时,程序能够采用一些理智的行为。如果由于出现错误而使得某些操作没有完成,程序应该: 返回到一种安全状态,并能够让用户执行一些其他的命令。 允许用户保存所有操作的结果,并以适当的方式终止...
Netty案例(二)之耗时任务的处理
文章目录netty版本Netty<em>耗时</em>任务的<em>处理</em>代码案例`Handler`自定义<em>业务</em><em>线程</em>池Context中添加<em>线程</em>池 netty版本 使用的netty版本是io.netty:netty-all:4.1.33.Final Netty<em>耗时</em>任务的<em>处理</em> Netty中EventLoop用来<em>处理</em>IO<em>线程</em>,因此handler中的<em>耗时</em>任务(比如<em>数据</em>库连接、远程调用等)不能在EventLoop里面执行。如果有耗...
如何确保三个线程顺序执行?
场景:有三个<em>线程</em>t1、t2、t3。确保三个<em>线程</em>t1执行完后t2执行,t2执行完成后t3执行。1.使用join1.使用join     thread.Join把指定的<em>线程</em>加入到当前<em>线程</em>,<em>可以</em>将两个交替执行的<em>线程</em>合并为顺序执行的<em>线程</em>。比如在<em>线程</em>B中调用了<em>线程</em>A的Join()<em>方法</em>,直到<em>线程</em>A执行完毕后,才会继续执行<em>线程</em>B。t.join();      //调用join<em>方法</em>,等待<em>线程</em>t执行完毕t.join...
android开发 用线程进行耗时操作,统一处理
最近项目中,发现程序的反应实在有点慢,主<em>线程</em>中的<em>耗时</em>操作多了点,但没有时间去改,就想<em>写个</em>公用类,专门用来<em>处理</em>这些<em>耗时</em>操作,于是写了个 ThreadUtil, 思路是在util中使用一个单例<em>线程</em>池,然后用反射的<em>方法</em>去调用需要被调用的<em>方法</em>,然后用handler去协调,代码并没优美,只是把想法记录下来,以后再进行优化。代码如下: ThreadUtil.java package com.bj
织梦新建文章模型后 文章栏目转入新模型操作
首先在织梦后台建立新内容模型 ,再用以下的MYSQL 语句 将以前的栏目文章转入新模型, 例如以前的栏目为文章模型,ID 为 222, 新模型ID为 111  新模型附加表为 dede_addon20 //转移文章到新的  模型附加表为dede_addon20 INSERT INTO dede_addon20(aid,typeid,redirecturl,userip,body) SELEC
20岁以后增高方法大全
(转自中国成人增高网)     如何让身体长得更高?      谈起身高,实际包括两个含意,一个是生理高度或自然高度,<em>这个</em>高度是<em>可以</em>客观测量的争议不大;第二个是心理高度或社会高度,实际是本人和社会对某种高度的无形的认定。      今天社会对身高美的标准是,女孩子“亭亭玉立”,这至少要包括两腿修长,男青年则要“伟岸英俊”。这种标准用行政和政治力量是无法驱散和改变的。      如果仅仅是审美也就罢了,不幸的是身高渗透到社会各个领域,发挥着强大的作用
数据结构】处理散列冲突的方法
摘自大话<em>数据</em>结构 我们设计得再好的散列函数也不可能完全避免冲突,这就像我们再健康也只能尽量预防疾病,但却无法保证永远不得病一样,既然冲突不能避免,就要考虑如何<em>处理</em>它。那么当我们在使用散列函数后发现两个关键字key1≠key2,但是却有f(key1) = f(key2),即有冲突时,怎么办呢?我们<em>可以</em>从生活中找寻思路。试想一下,当你观望很久很久,终于看上一套房打算要买了,正准备下订金,人家告诉你,这房
springboot耗时操作启用多线程
<em>耗时</em>操作启用多<em>线程</em> private final static Executor executor = Executors.newCachedThreadPool(); executor.execute(new Runnable() { @Override public void run() { //另起线...
解决webservice里调用耗时方法出错问题
在webservice里调用多个<em>耗时</em>的<em>方法</em>时,如果按顺序执行,下面的<em>方法</em>要等上面的<em>方法</em>执行完毕才能执行,如果这些<em>方法</em>比较<em>耗时</em>,并且包括回调等异步调用,就回出现下面的<em>方法</em>不能正确执行,实例代码如下: public String runMethod(String syncId) { try { //<em>处理</em>Datapull dataPullService.setSyncId(syncId
使用Spring的@Async解决界面耗时操作,增强用户的体验度
首先需要在spring的配置文件当中添加一下内容:&amp;lt;!-- 定时器的<em>线程</em>池数量大小 --&amp;gt; &amp;lt;task:scheduler id=&quot;scheduler&quot; pool-size=&quot;5&quot; /&amp;gt; &amp;lt;!-- 任务<em>线程</em>池的数量大小,core size为5,max size为15,队列容量为5,达到总<em>线程</em>数时抛出异常、不执行 --&amp;gt; &amp;lt;task:executor ...
两个带有线程池的方法分别执行两组线程任务,第二个方法需要等待第一组任务执行完毕
如下两种<em>解决</em>方案其中一个会影响效率,另一个可能会有未知风险,如果谁有更好的<em>解决</em>方案,谢谢分享。 package thread; import java.util.ArrayList; import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionExce
DTO(转)
层间<em>数据</em>传输的过程就是服务的执行者将<em>数据</em>返回给服务的调用者的过程。在非分布式系统中由于有类似Open session in view这样的“怪胎<em>解决</em>方案”的存在,所以层间<em>数据</em>传输的问题并没有充分暴露出来,但是在分布式系统中我们就能清楚地意识到层间<em>数据</em>传输的问题,从而能 够更合理的进行设计。为了暴露更多问题,本章讨论的层间<em>数据</em>传输假定的场景是“服务器将执行的<em>数据</em>结果如何传递给远程客户端”,尽管在实际
网络连接 以及超时处理
-
Activity 初始化性能优化
在Android 应用开发中,我们最关注的莫过于Activity的启动速度了.<em>可以</em>说启动速度的好坏一直是我们应用能否成功吸引用户的关键所在. 试想一个界面从点击入口到真正界面显示的过程,如果太长,用户将失去耐心,进而无情抛弃<em>这个</em>应用. 那么如何加快一个界面的显示速度呢?我们<em>一般</em>都会去研究Activity的初始化流程.实际上,如果我们新建一个Activity,在它的生命周期内什么都不干,那么他的启动
iOS 耗时操作放在子线程,阻止线程阻塞
//这里应该开辟一个子<em>线程</em>去请求苹果服务器          dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{          //        [self goDoSomethingLongAndInvolved];         DSLog(@"
synchronized 的弊端: 耗时过长解决方法:用同步代码块解决时间太长的弊端,但是同步代码块也是有弊端的
1 <em>耗时</em>过长  package commonutils; public class CommonUtils { public static long beginTime1; public static long endTime1; public static long beginTime2; public static long endTime2; } package mytas...
过拟合及常见处理办法整理
    训练网络时,遇到过拟合问题,查找后,整理成文档,便于查看。判断<em>方法</em>过拟合(over-fitting),机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在验证<em>数据</em>集以及测试<em>数据</em>集中表现不佳。出现这种现象的主要原因是训练<em>数据</em>中存在噪音或者训练<em>数据</em>太少。过拟合问题,根本的原因则是特征维度(或参数)过多,导致拟合的函数完美的经过训练集,但是对新<em>数据</em>的预测结果则较差。常见原因1)建模样...
十种常用的的数据分析思路,你都知道吗?
道家强调四个字,叫“道、法、术、器”。 层次区别:“器”是指物品或工具,在<em>数据</em>分析领域指的就是<em>数据</em>分析的产品或工具,“工欲善其事,必先利其器”; “术”是指操作技术,是技能的高低、效率的高下,如对分析工具使用的技术(比如用Excel进行<em>数据</em>分析的水平); “法”是指选择的<em>方法</em>,有句话说“选择比努力重要”; “道”是指方向,是指导思想,是战略。 在<em>数据</em>分
线程、并发及线程的基础问题
1. Java 中能<em>创建</em> volatile 数组吗? 能,Java 中<em>可以</em><em>创建</em> volatile 类型数组,不过只是一个指向数组的引用,而不是整个数组。 我的意思是,如果改变引用指向的数组,将会受到 volatile 的保护, 但是如果多个<em>线程</em>同时改变数组的元素,volatile 标示符就不能起到之前的保护作用了。
java web之中,如果Servlet中有耗时较长的计算,该怎么做才好?
java web之中,如果Servlet中有<em>耗时</em>较长的计算,该怎么做才好? 下面用Thread.sleep(5000)来模拟<em>耗时</em>较长的计算: public class calcServlet extends HttpServlet { /** * Destruction of the servlet. */ public void destroy() { super.des
Android如何在oncreate方法中执行耗时操作
最近在编写代码时发现一个问题,在编写了一个网络请求<em>方法</em>时,写在oncreate的<em>方法</em>中时,往往会跳过请求,我又尝试新建了一个button,在onclick<em>方法</em>中调用,却发现又<em>可以</em>正确的执行该<em>方法</em>,那么问题出在哪里呢? 我查阅了相关信息,在主<em>线程</em>中,我们不能执行<em>耗时</em>操作来更新UI,我们只能在子<em>线程</em>中进行<em>耗时</em>操作后再通过handler传递消息来通知主<em>线程</em>进行UI操作来更新UI。 new Thre...
Spring实战教程 | 第十二篇:用Spring AOP实现异常处理和记录程序执行时间
<em>这个</em>实例用于一个系统的所以<em>方法</em>执行过程中出现异常时,把异常信息都记录下来,还有记录每个<em>方法</em>的执行时间,这两个<em>业务</em>逻辑首先使用SpringAOP的自动代理功能,然后一个用Java的动态代理,一个用CGLIB代理 用Spring AOP的自动代理实现 (1)定义负责异常<em>处理</em>的Advice为ExceptionHandler.java ,负责当程序执行过程中出现异常,把异常信息记录下来 pu...
Netty程序(业务线程异步)
有了之前的基础之后,我们从netty官网的示例(略做修改),来开始netty之旅。我们实现一个支持hello world版的netty程序。首先我们<em>创建</em>一个主类:侦听 http端口,启动服务import io.netty.bootstrap.ServerBootstrap; import io.netty.channel.Channel; import io.netty.channel.Chann...
这段代码演示将文件内容读入chunks(20k)比较简单的方法是一个一个字符读取但速度很慢这个例子提供的方法能快速处理文件中的数据 (6KB)...
这段代码演示将文件内容读入chunks(20k)比较简单的<em>方法</em>是一个一个字符读取但速度<em>很慢</em><em>这个</em>例子提供的<em>方法</em>能快速<em>处理</em>文件中的<em>数据</em> (6KB)
如何解决java线程中的资源共享的问题
更多相关的文章的链接:http://www.cnblogs.com/chenssy/p/4701027.html; 1.资源共享问题的产生:由于需要被访问的资源没有被合理地保护起来,所以在多<em>线程</em>都来访问<em>这个</em>资源的时候,很可能就会出现<em>这个</em>问题,从而导致产生了错误。比如下面的<em>这个</em>例子:其实<em>可以</em>这样理解:你坐在桌子的旁边,正要去叉盘子中的最后的一块事物,当你的叉子就要够着它的时候,这片事物突然就消失了
spring boot 处理线程解决方案
spring boot <em>处理</em>多<em>线程</em>的<em>解决</em>方案(不知道可不可行),如果有更好的方案请指教 思路:用户的请求采用callable 来<em>处理</em>用户的每个请求,每个请求都给予回应, 那么<em>线程</em>池的size 就要根据并发数量决定了, 暂定30个 加入msg 是为了校验请求的发出者和多<em>线程</em>返回的结果对应上(观察msg返回值是否是用户请求的原始值,如果不是就说明多<em>线程</em>出现了相互干扰) http:
Android 避免耗时操作及解决办法
在Android开发中有很多地方需要避免一些<em>耗时</em>操作,总的来说就是避免在主<em>线程</em>中执行<em>耗时</em>操作,这些地方如果执行<em>耗时</em>操作容易造成程序崩溃,以下是总结的一些小点: Service的onStartCommand() 和 onBind() <em>方法</em>中不能执行<em>耗时</em>操作 BroadcastReceiver的onReceive<em>方法</em>不能执行<em>耗时</em>操作,因为<em>这个</em><em>方法</em>是在主<em>线程</em>执行的,<em>耗时</em>操作会导致UI不顺畅,超过10...
Java-针对查询大量数据时,解决效率的方案
在查询大量<em>数据</em>时,怎么提高查询效率? 从<em>数据</em>库设计方面考虑: 建立索引分区(MysQL,比如按时间分区)尽量使用固定长度的字段限制字段长度 从<em>数据</em>库I/O方面: 增加缓冲区如果涉及表的级联,不同的表存储在不同的硬盘上,以增加I/O读取的速度 从SQL语句方面: 优化SQL语句,减少比较的次数限制返回的条目数(MySQL中用的limit) 从Java代码方面: 如果反
java,当查询的数据量比较大,查询时间过长,查询被中断问题解决
异常信息: ### Cause: java.sql.SQLException: Query execution was interrupted ; uncategorized SQLException for SQL []; SQL state [70100]; error code [1317]; Query execution was interrupted; nested excepti
论一个博客公开的技术含量
博客作为一种公开的手段,也体现了作者的思想和技术贡献,是能够作为衡量一个人的技术水平的参考物,在法律公开上来说,也算一种公开的手段。有人会质疑一个博客的修改时间依然为公开时间,这要涉及经营博客论坛等的网络公司后台如何设置,因此,建议每次作者更新,就要体现一下更新的时间点,但是每次编辑的内容依然要保留,好保留好公开的证据,这样对作者还有同行的公众,都更加公平和公正。 这里,时间点是一个技术贡献的关
j2EE经典面试题
1. hibernate中离线查询去除重复项怎么加条件? dc.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);   2. http协议及端口,smtp协议及端口 http:超文本传输协议 端口 80   smtp:简单邮件传输协议 端口25   3. 编写程序,完成文件复制功能       4. Servlet<em>创建</em>过程及
在Winform中使用C#异步优化耗时操作
ThreadPool.QueueUserWorkItem((obj) =>             {                 if (InvokeRequired && IsHandleCreated)                 {                     this.BeginInvoke(new Action(delegate(object arg)  
关于多线程对程序执行时间的影响
多<em>线程</em>真的能加速程序的执行吗? 假设有以下一个任务:读取一个文件,从文件中搜索指定的单词,统计个数。用以下两种方式完成: 1.开两个<em>线程</em>,一个<em>线程</em>负责读取文件,读取一个单词后扔给另一个<em>线程</em>,另一个<em>线程</em>负责检查<em>这个</em>单词是否匹配指定的单词。 2.只用一个<em>线程</em>,边读文件,读完一个单词以后,匹配<em>这个</em>单词,匹配出结果以后再读下一个单词。 两段程序的代码如下: 多<em>线程</em>程序:(文本文件用的是我在申请的
Node.js中如何处理耗时长的任务
Node.js是单<em>线程</em>模型,运用在服务器模型中,如果一次用户请求,后台做了<em>耗时</em>任务的<em>处理</em>,譬如复杂的<em>数据</em>运算等等,将会堵塞所有的用户请求,无法利用起异步高并发的特征。不过<em>可以</em>通过child_process克隆进程的方式,防止<em>线程</em>阻塞,进程间<em>可以</em>进行通信。      本文以斐波那契数列为例,如何优化此类问题。斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·
[经验之谈]数据库查询速度优化之解决技巧
摘要 在上篇文章漫谈<em>数据</em>库查询速度优化方案我们讲到了,<em>数据</em>优化的几种方案,现在这篇文章,我们就实际来看看,如何实际到具体的操作上.也就是我们在写<em>数据</em>时我们应该注意些什么. 1、对查询进行优化,应尽可能避免全表扫描 首先应考虑在 where 及 order by 涉及的列上建立索引。 下面我们来以一个表中177条<em>数据</em>比较一下,全表扫描与建立索引之后性能的一个比较. 1.1 全表查询
js 高耗时代码异步处理
今天写一个本地<em>数据</em>简单筛选功能的时候发现循环查询的时候会有明显的卡顿,遂加上loading加载来优化用户体验。可是加上loading加载发现依然会卡顿,调试发现代码执行的时候loading还没来得及开始<em>线程</em>就已卡住了。等循环结束loading才开始,这时候还要你何用啊。。。 well,言归正传 startLoading(); setTimeout(funct...
使用Servlet处理业务逻辑
使用Servlet<em>处理</em><em>业务</em>逻辑
as编译慢解决办法
将offline work 选中如果项目依赖新的包的时候,一定要记着打开,否则无法下载依赖的第三方库
哈希冲突的处理【闭散列方法-线性探测和二次探测】
散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的<em>数据</em>结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。<em>这个</em>映射函数叫做散列函数,存放记录的数组叫做散列表。    给定表M,存在函数Hash(key),对任意给定的关键字值key,代入函数后若能得到包含该关键字的记录在表中的地址,则称表M为哈希(Hash)表,函数Hash(
线程并发调用多个同一个实例多个带锁的方法,导致死锁~
由于很多时候没有注意到,导致一个service的实现里面的2个<em>方法</em>都加了同一个锁,导致当一个<em>方法</em>繁忙的时候另一个锁的<em>方法</em>死锁,执行不了~~ <em>解决</em><em>方法</em>,最好就是把执行次数多的<em>方法</em>另外加锁,不要和其他带锁的<em>方法</em>用同一个锁即可: byte[] lock01 = new byte[0]; public Result synResultByCache(String fid) { synch...
Android耗时任务处理方案--AsyncTask
在android应用中,每一个应用都对应一个进程,而应用的进程默认情况下只会开启一个<em>线程</em>即主<em>线程</em>。所有的操作都发生在主<em>线程</em>(或者称为UI<em>线程</em>)。 主<em>线程</em>的生死存亡是和进程一致的。 运行在UI<em>线程</em>中的操作主要有System Event, Input Event, Application, Service, Alarm, UI Drawing.这些类的代码都会执行在UI<em>线程</em>中。而且在这类操作中写的所
WebAPI开发中的定时处理
在WebAPI开发中会遇到一些需要定时或周期性<em>处理</em>的功能,比如每天早上6点从服务器下载<em>数据</em>或每隔半个小时查询统计<em>数据</em>等,有时也需要将<em>数据</em>向客户端推送。如何让web API也能<em>处理</em>定时或周期性的任务呢?1.<em>处理</em>周期性任务周期性的任务<em>可以</em>通过C#自带的Timer类来实现。具体思路就是<em>创建</em>一个Timer,定时去执行web API内的<em>方法</em>,再<em>这个</em><em>方法</em>内<em>可以</em>执行具体的<em>数据</em>操作,也<em>可以</em>结合SignalR进行<em>数据</em>
thinking in java test chapter6练习(1)~(9)以及翻译问题
练习(1):在某个包中<em>创建</em>一个类,在<em>这个</em>类所处的包外部<em>创建</em>该类的实例。 代码如下:public class testTest6_1 { public static void main(String[] args){ test6_1 example = new test6_1("num1"); System.out.println(example.getN
利用NSOperation 与 NSOperationQueue 处理线程时, 有3个NSOperation分别为A, B, C, 要求AB执行完之后再执行C, 如何做?...
<em>创建</em>队列 NSOperationQueue * queue = [[NSOperationQueue alloc]init]; <em>创建</em>三个操作 NSOperation * A = [NSBlockOperation blockOperationWithBlock:^{ NSLog{@&quot;A&quot;}; }]; NSOperation * B = [...
Netty业务处理线程池的选择
根据我们前面分析的,接收到消息后,为了避免在I/O<em>线程</em>里执行<em>耗时</em>的操作,<em>一般</em>都会使用<em>线程</em>池来执行<em>业务</em><em>处理</em>逻辑. 那是使用Netty提供给我们的<em>方法</em>,传入一个<em>线程</em>池还是使用我们自己定义的<em>线程</em>池好呢? 先来看Netty给我们提供的 ChannelPipeline addLast(EventExecutorGroup group, String name, Ch...
处理中文字符串的时候,如何处理这个字符
首先需要明白�<em>这个</em>字符是什么意思,是怎么产生的 解释:从某编码向Unicode编码转化时,如果没有对应的字符,得到的将是Unicode的代码“\uffffd”,也就是�<em>这个</em>字符。 比如:服务器端用GB2312对响应的<em>数据</em>进行编码,而接收端使用默认UTF-8编码接收是对应不上的,就会出现<em>这个</em>符号。 <em>解决</em><em>方法</em>: 跟服务器端保持一致的接收编码即可,如: /** * 将响应实体拼接成字...
Linux多线程数据处理
和进程相比,<em>线程</em>的最大优点之一是<em>数据</em>的共享性高。但是在应用的过程中,我们必须当心有多个不同的进程访问相同的变量。许多函数是不可重入的,即同时不能运行一个函数的多个拷贝(除非使用不同的<em>数据</em>段)。为了保护变量,我们必须使用信号量、互斥等<em>方法</em>来保证我们对变量的正确使用。 ´1)<em>线程</em><em>数据</em> 在单<em>线程</em>的程序里,有两种基本的<em>数据</em>:全局变量和局部变量。但在多<em>线程</em>程序里,还有第三种<em>数据</em>类型:<em>线程</em><em>数据</em>(TSD: ...
线程共享数据的几种处理方式之synchronized
有4个<em>线程</em>,其中两个<em>线程</em>每次对x加1,另外两个每次对x减1,如何实现? 分析: x就是这4个<em>线程</em>要<em>处理</em>的共享<em>数据</em>,不同种<em>线程</em>有不同的<em>处理</em>方式,但操作的<em>数据</em>是共同的,联想到“窗口买票问题”,但是卖票只是单纯的减。 所以,多个<em>线程</em>访问共享对象或<em>数据</em>的方式,先看,如果每个<em>线程</em>执行的代码相同,那么就<em>可以</em>使用同一个Runnable对象,<em>这个</em>对象中有被共享的<em>数据</em>,如买票问题。 如果每个
Android多线程及异步任务消息处理机制(一)--Handler的使用
转载请注明出处: 前言         我们知道,不管在任何的语言或操作系统平台(Android系统也不例外),多<em>线程</em>、多进程和异步任务的相关技术地讨论都是永恒的话题,很多的开发需求都需要使用多<em>线程</em>及异步任务以便实现多任务的同时执行和灵活的用户操作界面,而很多系统在使用过程中出现诸多莫名其妙的问题,都是由于开发人员使用多<em>线程</em>不当造成的,因此掌握在各个平台上的多<em>线程</em>及异步任务的原
查空表很耗时的原因
在Oracle<em>数据</em>的存储中,<em>可以</em>把存储空间想象为一个水库,<em>数据</em>想象为水库中的水。水库中的水的位置有一条线叫做水位线,在Oracle中,这条线被称为高水位线(High-warter mark, HWM)。在<em>数据</em>库表刚建立的时候,由于没有任何<em>数据</em>,所以<em>这个</em>时候水位线是空的,也就是说HWM为最低值。当插入了<em>数据</em>以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除<em>数据</em>的话,<em>数据</em>
Service中是否可以执行耗时操作
参照文章:http://blog.csdn.net/hudashi/article/details/7986130 不<em>可以</em>。 Service和activity是运行在当前app所在的main thread(UI主<em>线程</em>)中的,而<em>耗时</em>操作(如:网络请求、拷贝<em>数据</em>、大文件)会阻塞主<em>线程</em>,给用户不好的体验。 Broadcase<em>耗时</em>操作为10秒,Activity<em>耗时</em>操作为5秒 Ser
异步处理耗时请求
最近做一个项目,需要把excel导入到<em>数据</em>库中,<em>一般</em>的流程是后台poi解析excel,后台做校验,<em>数据</em>补全等逻辑再转换为json<em>数据</em>,返回到前台,前台点击确认导入后,再保存到后台。但是这样做有几个问题? 假设<em>数据</em>量很大或者校验,<em>数据</em>补全等特别<em>耗时</em>间,夸张的,甚至得几十分钟,<em>这个</em>请求可能就会被浏览器认为是超时请求,有的同学可能会说,小意思,我把浏览器超时时间设置的长一点不就好了,<em>这个</em>办法没有根本的解...
耗时任务处理方式
今天遇到一个<em>耗时</em>任务,该任务分为1,2,3,4 四个步骤,每个步骤持续两秒,一共八秒时间,并且要求该任务在执行的同时,<em>可以</em>随时打断该任务。通常开始写的时候很容易写成将Task<em>处理</em>函数内部延时 8000Ms,但是这样的有两个问题,第一个问题是在该任务执行期间,系统将在这里不间断<em>耗时</em>8000Ms,严重影响系统性能。第二 在该任务执行期间,无法中断该任务。<em>解决</em>方式: int xxx_task() ...
事务处理后执行耗时线程
最近遇到的一个难题是这样的:一个<em>方法</em>中使用了事务,<em>方法</em>里插入了新的<em>数据</em>,要在<em>方法</em>完成的最后执行多个<em>耗时</em><em>线程</em>,<em>线程</em>又将要查询与修改那些新增的<em>数据</em>。 先抛个结论使用TransactionSynchronizationManager.registerSynchronization来<em>解决</em>@Transactional public void process() { for(int i = 0; i <
java处理线程阻塞的小技巧
在java中我们使用多<em>线程</em>去<em>处理</em>一些<em>业务</em>,如果<em>业务</em>比较复杂且当并发量有挺大的时候,很有可能出现<em>线程</em>阻塞的问题。案例: 有一个触发接口,根据触发的信息内部开启多个<em>线程</em>去执行<em>业务</em>,每个<em>线程</em>都会去执行两种<em>业务</em>:私有<em>业务</em>(比如调用不同的接口)、公共<em>业务</em>(比如执行存储、mq发送等等),当私有<em>业务</em><em>处理</em>时间很快而公共<em>业务</em><em>处理</em>时间比较长,这样的情景下就<em>可以</em>把私有<em>业务</em>和公共<em>业务</em>分到不同<em>线程</em>执行。例如: 当触发了
通过filter实现对输出内容的压缩处理
在实际当中大量的js和页面内容使得页面呈现要花<em>很长</em>时间,特别是使用ext。如是找到这种办法去<em>处理</em>一下,还没有测试有多大的优化性能。[color=red]全部实现代码在附件中[/color] [code=&quot;java&quot;] public class CompressionFilter implements Filter { // 适合在上JBoss, Jetty, JOnAS, OC4J, Or...
WebApi(二)【跨域问题解决方案:CORS】
一、跨域问题的由来 同源策略:出于安全考虑,浏览器会限制脚本中发起的跨站请求,浏览器要求JavaScript或Cookie只能访问同域下的内容。 正是由于<em>这个</em>原因,我们不同项目之间的调用就会被浏览器阻止。比如我们最常见的场景:WebApi作为<em>数据</em>服务层,它是一个单独的项目,我们的MVC项目作为Web的显示层,<em>这个</em>时候我们的MVC里面就需要调用WebApi里面的接口取<em>数据</em>展现在页面上。因为我们的W
MongoDB查询耗时记录方法
本文为转载,原文:MongoDB查询<em>耗时</em>记录<em>方法</em> 准备 在此之前,我们先在我们的<em>数据</em>库中插入10万条<em>数据</em>。<em>数据</em>的格式是这样的: { &quot;name&quot;:&quot;your name&quot;, &quot;age&quot;:22, &quot;gender&quot;:&quot;male&quot;, &quot;grade&quot;:2 } explain explain<em>方法</em>是用来查看db.collecion.find()的一些查...
java开启多个线程,执行完成后再执行主线程
博主昨天去一家公司面试,被面试官问到一个问题,如果开启10个<em>线程</em>,但是需要这10个<em>线程</em>都执行完成后,再交由主<em>线程</em>统一输入,如何实现?当时我没有回答,我对多<em>线程</em>并不是那么的熟悉,面试结束后,我通过查阅资料找到了<em>解决</em>方案,下面我贴出代码: int count = 10; List workers = new ArrayList<>(); for(in
addBatch 批处理
在批量更新 SQL 操作的时候建议使用 addBatch,这样效率是高些,<em>数据</em>量越大越能体现出 来 Statement 接口里有两个<em>方法</em>: void addBatch addBatch(String sql) 将给定的 SQL 命令添加到此 Statement 对象的当前命令列表中。通过调用方 法 executeBatch <em>可以</em>批量执行此列表中的命令。 int[] execut
三个线程依次顺序执行
保证三个<em>线程</em>依次按顺序执行在有一些需求的情况下,我们需要三个<em>线程</em>依次按顺序执行,那么有人就会问了,为什么不把三个<em>线程</em>的run<em>方法</em>依次放到三个<em>方法</em>体中,然后依次执行,按顺序调用三个<em>方法</em>体,这样不是同样达到了目的了么,为什么非要弄的那么复杂,我个人的观点是别人面试官不问的这样深一点,怎么能体现他的技术了。所以我就在网上找了几篇blok,发现代码都有,不过都达不到目的,在这一篇blok中 [ 链接 ] 发
解决线程间对共享资源的竞争
 进行多<em>线程</em>编程,因为无法知道哪个<em>线程</em>会在哪个时候对共享资源进行操作,因此让如何保护共享资源变得复杂,通过下面这些技术的使用,<em>可以</em><em>解决</em>            <em>线程</em>之间对资源的竞争:                 1 互斥量Mutex                 2 信号灯Semaphore(不做介绍)                 3 条件变量Conditio
关于线程中异常的处理
我们经常使用try..catch进行异常<em>处理</em>,但是对于Uncaught Exception是没办法捕获的。对于这类异常如何<em>处理</em>呢? 回顾一下thread的run<em>方法</em>,有个特别之处,它不会抛出任何检查型异常,但异常会导致<em>线程</em>终止运行。这非常糟糕,我们必须要“感知”到异常的发生。比如某个<em>线程</em>在<em>处理</em>重要的事务,当thread异常终止,我必须要收到异常的报告(email或者短信)。 在
不要在UI主线程中进行耗时的操作
转载http://mobile.51cto.com/aprogram-487752.htm 问题 自Android Ice Cream Sandwich发布后, <em>这个</em>问题就开始在StackOverflow弥散开来: 我的应用在Android2.x上运行良好,但是在3.x 和4.x系统上总是强退,是什么导致的? 这是一个很棒的问题,毕竟开发者总是希望基于旧版本系统开发的应
jquery/js实现一个网页同时调用多个倒计时(最新的)
jquery/js实现一个网页同时调用多个倒计时(最新的) 最近需要网页添加多个倒计时. 查阅网络,基本上都是千遍一律的不好用. 自己按需写了个.希望对大家有用. 有用请赞一个哦! //js //js2 var plugJs={     stamp:0,     tid:1,     stampnow:Date.parse(new Date())/1000,//统一开始时间戳     ...
FinsTest C# 欧姆龙PLC Fins TCP 协议线圈值读写示例下载
此示例用于演示与OMRON PLC设备进行以太网 FINS 通讯。 示例中只演示了对线圈值(布尔值)的读写操作。 详细的帧格式应参考欧姆龙官方文档,读者应自行学习有关FINS协议的相关知识。 若读者对TCP通讯不够熟悉,应首先学习相关内容,可以下载示例 TCPTest。 本示例使用VS2012编写">此示例用于演示与OMRON PLC设备进行以太网 FINS 通讯。 示例中只演示了对线圈值(布尔值)的读写操作。 详细的帧格式应参考欧姆龙官方文档,读者应自行学习有关FINS协议的相关知识。 若读者对TCP通讯不够熟悉,应首先学习相? [更多] 相关下载链接:[url=//download.csdn.net/download/heroius/6804581?utm_source=bbsseo]//download.csdn.net/download/heroius/6804581?utm_source=bbsseo[/url]
Quidway S3500系列以太网交换机操作手册下载
Quidway S3500系列以太网交换机操作手册 相关下载链接:[url=//download.csdn.net/download/qinyu0504/2056744?utm_source=bbsseo]//download.csdn.net/download/qinyu0504/2056744?utm_source=bbsseo[/url]
基于单片机流水灯C程序下载
单片机流水灯C程序 希望会对你有所帮助 呵呵 相关下载链接:[url=//download.csdn.net/download/sxzt007/2532102?utm_source=bbsseo]//download.csdn.net/download/sxzt007/2532102?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java的一些学习这个。 有产品经理这个课程吗
我们是很有底线的