java-为什么我写的android多线程下载程序刚开始速度很快,之后越来越慢?

问题描述

为什么我写的android多线程下载程序刚开始速度很快,之后越来越慢?

我写的多线程下载程序,用了8个线程,一次读10240byte个字节。
刚开始前几s下载速度显示可以到600多k/s
但是马上就降到个位数或十几k/s
不是网络问题,因为我用别的东西下载速度都会很快。
如果我暂停后恢复又是前几s会很快,之后速度又掉下来了。
这是为什么呢???
如何保持java下载速度,谢谢!
还有我该如何平衡线程数与一次下载字节间的关系?

解决方案

我感觉是你开启的线程 不够多的原因 供不应求

时间: 2025-01-27 01:57:46

java-为什么我写的android多线程下载程序刚开始速度很快,之后越来越慢?的相关文章

Android多线程下载

项目源码下载 https://github.com/Wang-Jun-Chao/AndroidProjects 多线程下载 原理:服务器CPU分配给每条线程的时间片相同,服务器带宽平均分配给每条线程,所以客户端开启的线程越多,就能抢占到更多的服务器资源 确定每条线程下载多少数据 发送http请求至下载地址 String path = URL url = new URL(path) HttpURLConnection conn = (HttpURLConnection) url() conn()

问题-刚开始学习java ,自己写了一个聊天小程序,没报错但是有毛病,希望能帮忙问一下

问题描述 刚开始学习java ,自己写了一个聊天小程序,没报错但是有毛病,希望能帮忙问一下 刚开始学习java ,自己写了一个聊天小程序,没有报任何错误.测试时打开3个聊天小窗口 A,B,C,在A中输入文字,只在B中显示出来了,而且显示出了三句相同语句.查了好几个小时都没有查出来,希望高手能帮帮忙,看看是怎么回事,并且告诉我是通过什么方法找出来的. 以下是客户端和服务器端代码 客户端: import java.awt.*; import java.awt.event.*; import java

为什么我写的android调色板小程序只能调单一颜色深浅,无法混合调色?

问题描述 为什么我写的android调色板小程序只能调单一颜色深浅,无法混合调色? package com.example.palettebyandroid; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.ColorMatrix; i

C# 写的Winform页面下载程序 在没有抛出异常的情况下退出程序

问题描述 C#写的Winform页面下载程序在没有抛出异常的情况下退出程序但是线程依然存在请问一下当正常与不正常的情况下,程序是不是都会通过CLoseing的事件退出程序呢谢谢~~!!在线等 解决方案 解决方案二:不一定,有些异常直接就强制退出程序,并没有执行Closing事件你trycatch一下吧解决方案三:有时是直接退出进程了解决方案四:关于正常退出程序,线程还没有退出的问题,你可以定义一个全局变量如boolm_bExited=false;在窗体Closed事件里把m_bExited=tr

c# 多线程-用c#写了个多线程小程序,占用内存不断的增大,虚心求教

问题描述 用c#写了个多线程小程序,占用内存不断的增大,虚心求教 cleanDataTimer.Elapsed += new ElapsedEventHandler(CleanData); cleanDataTimer.Interval = 0.000000000006; cleanDataTimer.Enabled = true; Thread addRCSMemoryData = new Thread(new ThreadStart(AddRCSMemoryDeviceData)); add

android多线程下载3

今天跟大家一起分享下android开发中比较难的一个环节,可能很多人看到这个标题就会感觉头很大,的确如果没有良好的编码能力和逻辑思维,这块是很难搞明白的,前面2次总结中已经为大家分享过有关技术的一些基本要领,我们先一起简单回顾下它的基本原理. http://blog.csdn.net/shimiso/article/details/6763664  android 多线程断点续传下载 一 http://blog.csdn.net/shimiso/article/details/6763986 

android多线程下载2

在上一集中,我们简单介绍了如何创建多任务下载,但那种还不能拿来实用,这一集我们重点通过代码为大家展示如何创建多线程断点续传下载,这在实际项目中很常用. main.xml: [html] view plaincopy <?xml version="1.0" encoding="utf-8"?>   <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android&

Android多线程下载示例详解

一.概述 说到Android中的文件下载,Android API中明确要求将耗时的操作放到一个子线程中执行,文件的下载无疑是需要耗费时间的,所以要将文件的下载放到子线程中执行.下面,我们一起来实现一个Android中利用多线程下载文件的小例子. 二.服务端准备 在这个小例子中我以下载有道词典为例,在网上下载有道词典的安装包,在eclipse中新建项目web,将下载的有道词典安装包放置在WebContent目录下,并将项目发布到Tomcat中,具体如下图所示 三.Android实现 1.布局 界面

android --多线程下载

多线程下载文件的过程是:     (1)首先获得下载文件的长度,然后设置本地文件的长度.        HttpURLConnection.getContentLength();//获取下载文件的长度       RandomAccessFile file = new RandomAccessFile("QQSetup.exe","rwd");         file.setLength(filesize);//设置本地文件的长度     (2)根据文件长度和线程