.net中的多线程效率问题

问题描述

系统采用.net2005C#进行开发,程序中调用了arcgis中的控件进行进地图定位(仅得到定位数据,不涉及界面方面的更新或操作)地图定位在UI线程下面运行,可以达到200条/秒的处理速度.如果自己创建线程(Thread)进行地图定位,仅达到40条/秒的处理速度,把线程设为高优先级也没用环境说明,运行于core2的机上,内存有1G,操作系统windows2003,系统资源方面没有问题

解决方案

解决方案二:
想问一下,出现这种情况,一般是什么问题,应该从哪方面下手来处理这个问题
解决方案三:
多线程只是在交互上对用户感觉比较,效率方面是要低一点的。线程之间的轮询也要一点资源。你那线程优先级再高也高不过UI线程。
解决方案四:
效率低一点也不会低这么多吧?而且程序运行的过程中,UI线程与创建的线和并没有交互!
解决方案五:
学些。。慢慢优化吧:)欢迎访问
解决方案六:
学些。。慢慢优化吧:)欢迎访问
解决方案七:
UI线程与普通线程,在本质或者一些资源使用上有区别啊?
解决方案八:
Invoke了UI上的Control了?

时间: 2024-10-12 05:20:25

.net中的多线程效率问题的相关文章

Servlet及JSP中的多线程同步问题

js|servlet|多线程|问题 Servlet/JSP技术和ASP.PHP等相比,由于其多线程运行而具有很高的执行效率.由于Servlet/JSP默认是以多线程模式执行的,所以,在编写代码时需要非常细致地考虑多线程的同步问题.然而,很多人编写Servlet/JSP程序时并没有注意到多线程同步的问题,这往往造成编写的程序在少量用户访问时没有任何问题,而在并发用户上升到一定值时,就会经常出现一些莫明其妙的问题,对于这类随机性的问题调试难度也很大. 一.在Servlet/JSP中的几种变量类型 在

Android开发中的多线程编程技术

Android开发中的多线程编程技术 [IT168技术]多线程这个令人生畏的"洪水猛兽",很多人谈起多线程都心存畏惧.在Android开发过程中,多线程真的很难吗?多线程程序的"麻烦"源于它很抽象.与单线程程序运行模式不同,但只要掌握了它们的区别,编写多线程程序就会很容易了.下面让我们集中精力开始学习吧! 多线程案例--计时器 我在给我的学生讲多线程的时候都会举一个计时器的案例,因为计时器案例是多线程的经典应用. 这个案例中,屏幕启动之后,进入如图8-1所示的界面.

测试-单线程与多线程效率差不多

问题描述 单线程与多线程效率差不多 场景: Server: springboot 开发的一个 web 项目 client:使用 HttpClient 分别在单线程和多线程环境下测试某个模块的性能 问题: 1.多线程和单线程效率基本没差别 2.CPU使用率很低 解决方案 (1)过度同步或者锁定,导致真正应该并发的地方并没有并发 (2)CPU不是瓶颈,作为瓶颈的资源并不能在多线程下得到改善 (3)程序本身存在bug,甚至都没有正确执行 解决方案二: cpu使用率很低,多半是你测试方法的问题,建议你先

.NET 中的多线程的概念与线程池

为什么使用多线程 1.使用户界面能够随时相应用户输入 当某个应用程序在进行大量运算时候,为了保证应用程序能够随时相应客户的输入,这个时候我们往往需要让大量运算和相应用户输入这两个行为在不同的线程中进行. 2.效率原因 应用程序经常需要等待一些资源,如等待网络资源,等待io资源,等待用户输入等等.这种情况下使用多线程可以避免CPU长时间处于闲置状态. 用户态,内核态 线程内的资源有两种运行态,即用户态和内核态.某些运算可以在堆栈上进行,这种情况线程是在用户态运行的,某些需要高权限运行的指令,或者某

在.NET Workflo“.NET研究”w 3.5中使用多线程提高工作流性能

最近在工作上碰到一个性能问题,由于项目是基于SOA的架构,使得整个系统完全依赖于各种各样的Serv上海闵行企业网站制作ice,其中用于处理业务逻辑的Business Services全部都用.NET Workflow 3.5实现(历史原因,项目还没升级到Workflow 4).在众多的Business Service中,其中有一个的主要功能是,通过调用不同的Data Service来获取数据,然后根据业务逻辑来组织这些数据并返回给它的调用者.该Business Service的工作流(Workf

一起谈.NET技术,在.NET Workflow 3.5中使用多线程提高工作流性能

最近在工作上碰到一个性能问题,由于项目是基于SOA的架构,使得整个系统完全依赖于各种各样的Service,其中用于处理业务逻辑的Business Services全部都用.NET Workflow 3.5实现(历史原因,项目还没升级到Workflow 4).在众多的Business Service中,其中有一个的主要功能是,通过调用不同的Data Service来获取数据,然后根据业务逻辑来组织这些数据并返回给它的调用者.该Business Service的工作流(Workflow)主要包含三个

VB.NET中的多线程开发

多线程 引言 对于使用VB6的开发者而言,要在程序中实现多线程(multi-thread)功能,一般就是使用Win32 API调用.但凡是进行过这种尝试的开发者都会感觉到实现过程非常困难,而且总是会发生些null terminated strings GPF的错误.可是有了VB.NET,一切烦恼都成为过去. 自由线程(free threaded) 在VB6中,我们只能对组件设置多线程模式,这通常就是单元模式的多线程.对于单元线程组件而言,组件中的每个可执行方法都将在一个和组件相联系的线程上运行.

浅析php中实现多线程~

多线程 PHP中实现多线程? 看到这个标题, 你一定以为我疯了..但是事实上我真的这么做了. 下面是我的一些做法, 已经实验过. 确实可以的. 我们知道PHP本身是不支持多线程的, 但是我们的WEB服务器是支持多线程的. 也就是说可以同时让多人一起访问. 这也是我在PHP中实现多线程的基础. 假设我们现在运行的是a.php这个文件. 但是我在程序中又请求WEB服务器运行另一个b.php 那么这两个文件将是同时执行的. (PS: 一个链接请求发送之后, WEB服务器就会执行它, 而不管客户端是否已

Java 程序中的多线程

程序|多线程 在Java程序中使用多线程要比在 C 或 C++ 中容易得多,这是因为 Java 编程语言提供了语言级的支持.本文通过简单的编程示例来说明 Java 程序中的多线程是多么直观.读完本文以后,用户应该能够编写简单的多线程程序. 为什么会排队等待? 下面的这个简单的 Java 程序完成四项不相关的任务.这样的程序有单个控制线程,控制在这四个任务之间线性地移动.此外,因为所需的资源 - 打印机.磁盘.数据库和显示屏 -- 由于硬件和软件的限制都有内在的潜伏时间,所以每项任务都包含