我在Oracle 10g中看到了一个估计长时间运行查询的剩余时间的功能,我想知道在SQL Server中是否也可以这样做(至少在2008年?)?
假设我有一个非常大的表,有数千万行(索引等等),我需要搜索一些特定的行.我知道这需要花费很多时间而且我很酷,但我想向用户介绍一些进度条.
我怎样才能显示进度?
我使用Webclient使用异步调用上传数据到服务器,
WebClient webClient = new WebClient();
webClient.UploadDataAsync(uri , "PUT", buffer, userToken);
Run Code Online (Sandbox Code Playgroud)
我已将DatauploadProgress和DatauploadCompleted事件附加到适当的回调函数
// Upload Date Progress
webClient.UploadProgressChanged += new
UploadProgressChangedEventHandler(UploadProgressCallback);
// Upload Date Progress
void UploadProgressCallback(object sender, UploadProgressChangedEventArgs e)
{
// Magic goes here
logger.writeToLog("Percentage =" + e.ProgressPercentage);
}
Run Code Online (Sandbox Code Playgroud)
将e.ProgressPercentage始终返回50..不管上传文件的大小(10KB尝试之间不同的尺寸60MB).函数本身只被调用两次(真的很快),百分比显示50!..特别是大文件不合逻辑......
e.BytesSent也没有帮助..总是以字节为单位显示文件大小:S(例如:如果文件大小为63,000,我会得到e.BytesSent = 63,000和e.ProgressPercentage= 50
有人能指出问题给我吗?
我刚刚完成了Adobe Flash Builder 4的安装.我肯定已经将Adobe网站上最新的Flash播放器安装到了我的电脑上.此外,在Flash Builder 4的运行配置中,我将源路径从.html文件更改为生成的.swf文件.我不需要在网络浏览器中测试它,我只想在flash播放器中运行swf.
我的actionscript项目中只有1个.as文件,除了包,类和主函数语句之外,没有编写代码.当我运行.html文件时,它运行正常,调试很好.但是,当我将源路径切换到.swf文件时,它运行正常,但不会调试!
当我调试它时,进度停留在57%,并在"进度"选项卡中显示"等待Adobe Flash Player连接到调试器...".几分钟后,会弹出一个窗口,上面写着:
"连接失败.会话已经超时.请确保您已经运行了调试程序并且我有调试器版本的flash播放器."
我该怎么做才能解决这个问题?我在运行OS 10.6.5的intel Mac上.
谢谢
我在我的Java应用程序中下载了一些文件并实现了下载监视器对话框.但最近我使用gzip压缩了所有文件,现在下载监视器有点破碎了.
我将文件作为a打开,GZIPInputStream并在每次下载KB后更新下载状态.如果文件的大小为1MB,则进度上升到例如4MB,这是未压缩的大小.我想监视压缩的下载进度.这可能吗?
编辑:澄清:我正在读取GZipInputStream中的字节,这些字节是未压缩的字节.所以这并没有给我正确的文件大小.
这是我的代码:
URL url = new URL(urlString);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.connect();
...
File file = new File("bibles/" + name + ".xml");
if(!file.exists())
file.createNewFile();
out = new FileOutputStream(file);
in = new BufferedInputStream(new GZIPInputStream(con.getInputStream()));
byte[] buffer = new byte[1024];
int count;
while((count = in.read(buffer)) != -1) {
out.write(buffer, 0, count);
downloaded += count;
this.stateChanged();
}
...
private void stateChanged() {
this.setChanged();
this.notifyObservers();
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
有没有办法在MPMovidePlayer上自定义电影进度滑块的外观或至少位置?
我在上传进度条正常工作时遇到了一些问题.
根据XMLHttpRequest Level 2规范,我为loadstart附加了事件监听器,并且进展如下:
var xhr = $.ajaxSettings.xhr();
xhr.upload.addEventListener('loadstart', function(e) {progressCallback(0);});
xhr.upload.addEventListener('progress', function (e) {
progressCallback(e.loaded / e.total);
});
$.ajax({
url: url,
type: 'POST',
processData: false,
contentType: false,
data: formData,
xhr: function () {
return xhr;
}
}).done(function (data) {
// Finish stuff
})
Run Code Online (Sandbox Code Playgroud)
文件已正确上传,但只有在请求以100%完成后才会调用进度监听器(e.total == e.loaded)
上面的代码有什么问题,或者是否有必要以任何特殊方式配置服务器?
我想要一个循环的进度条,所以我搜索了很长时间,发现了许多插件,但我不喜欢它.所以我用纯CSS构建我自己的:
这很棒,但有两件事我遇到了麻烦:
1.)我正在使用Firefox V28.Final,在25%它看起来如下:

不应出现小边框.我怎样才能解决这个问题?
2.)我想要一个jquery脚本来动画进度(渐变).所以问题是,线性梯度没有统一的结构.我如何构建一个脚本,动画线性渐变从0到x%,就像我用CSS构建示例一样?
var start = 0;
var end = 75;
// Animate linear-gradient from 0 to 75%
$('#progressbar').animate({
});
Run Code Online (Sandbox Code Playgroud)
谢谢!
我在显示加载到AppDomain.CurrentDomain中的程序集的进度时遇到了一些困难.
我想要做的是显示一个带有进度条的启动画面,我希望能够在每个程序集加载到AppDomain的内存中时更新此进度条.这样,用户将具有关于应用程序启动进度的可视指示符.
我不关心在渲染Splash Screen之前加载程序集,这实际上只是带有进度条的标准WPF窗口.加载启动画面后,我想在装载时报告它们.我没有手动加载这些程序集.
到目前为止,我已经使用以下标记处理了App.xaml中的Startup事件:
Startup="Application_Startup"
Run Code Online (Sandbox Code Playgroud)
启动后面的相应代码如下:
private void Application_Startup(object sender, StartupEventArgs e)
{
SplashScreen.Show<SplashScreen>();
AppDomain.CurrentDomain.AssemblyLoad += CurrentDomain_AssemblyLoad;
}
void CurrentDomain_AssemblyLoad(object sender, AssemblyLoadEventArgs args)
{
SplashScreen.CallSplashScreenMethod<SplashScreen>(x => x.Text(args.LoadedAssembly.GetName().Name));
}
Run Code Online (Sandbox Code Playgroud)
这正如我所期望的那样,显示启动画面,并且在显示启动画面时正在加载的任何组件都显示在屏幕上而没有问题.

这里的问题是我看不到报告正在加载的程序集进度的方法.
程序集似乎没有按任何特定顺序线性加载,因此我不知道如何计算要加载的剩余程序集数量.我看不到一种明显的方法来获取当前正在加载的程序集.
如果我能得到一个尚未由CLR加载的程序集列表,我可以通过使用标准计数来实现进度条
progress = numberOfLoadedAssemblies / totalNumberOfAssemblies * 100;
Run Code Online (Sandbox Code Playgroud)
或者通过实施Chris Marisic关于使用加权平均值的优秀答案的逻辑
我不能做一个简单的" Directory.GetFiles().Length "来获取要加载的程序集总数.原因是因为CLR没有按任何特定顺序加载程序集.它似乎从应用程序根加载一些程序集,然后从GAC加载一些程序集,然后从应用程序根加载更多程序集.
我想知道的是,是否有办法获得要加载的剩余程序集列表.
我正在编写一个Angular应用程序,它使用ReactiveX API来处理异步操作.我之前在Android项目中使用过API,我非常喜欢它如何简化并发任务处理.但有一件事我不确定如何以正确的方式解决.
如何从正在进行的任务中更新观察者?在这种情况下的任务将花费时间来加载/创建复杂/大型对象,并且我能够返回中间进度,但不能返回对象本身.observable只能返回一个dataType.因此,我知道两种可能性.
创建一个具有进度字段和数据字段的对象.可以使用Observable.onNext(object)返回此对象.progress字段将在每个onNext上更新,而data字段为空,直到最后一个onNext,这将把它设置为加载的值.
创建两个可观察对象,一个数据可观察对象和一个进度可观察对象.观察者可以订阅进度更新可观察的进度以及最终加载/创建数据时可通知的数据.这些也可以选择性地压缩在一起进行一次订阅.
我使用了这两种技术,它们都有效,但我想知道是否有统一的标准,干净的方式,如何解决这个任务.当然,它也可以是一个全新的.我为每个解决方案开放.
我目前正在尝试将内部函数的进度(使用Iprogress和Progress)传递给main函数.内部函数完成后,一切正常.但是,我正在使用EBay的API检索/下载一些数据(EBay的查找服务是一种以XML格式返回数据的休息服务),并且需要在下载检索的XML数据期间将进度报告从内部函数传递到主函数/数据处理.
这是主要功能的代码(有点开始变得过载,但你会得到什么.为了理智而评论.):
Private Property a As Integer
Get
Return a_value
End Get
Set(value As Integer)
a_value = value
' ReportProgress(value, Nothing)
End Set
End Property
Private a_value As Integer
Public Async Function EvaluateItem(item As List(Of ItemInfo), evalprogress As IProgress(Of Integer), Optional ManualEvaluation As Boolean = False) As Task(Of List(Of EvaluationInfo))
Dim notevaluatedcount As Integer = 0
Dim iteminfo1 As ItemInfo = New ItemInfo
Dim tmpiteminfo As List(Of ItemInfo) = New List(Of ItemInfo)
Dim tmpiteminfo2 As List(Of ItemInfo) = New List(Of …Run Code Online (Sandbox Code Playgroud) progress ×10
c# ×2
jquery ×2
.net ×1
apache-flex ×1
assemblies ×1
builder ×1
css ×1
css3 ×1
debugging ×1
download ×1
flash ×1
gzip ×1
ios ×1
iphone ×1
java ×1
javascript ×1
monitor ×1
observable ×1
reactivex ×1
rx-java ×1
rxjs ×1
slider ×1
sql-server ×1
upload ×1
uwp ×1
uwp-xaml ×1
vb.net ×1
webclient ×1
wpf ×1