小编Xpi*_*itO的帖子

.NET异步流读/写

我一直在尝试解决这个"并发编程"考试练习(在C#中):

知道Stream该类包含int Read(byte[] buffer, int offset, int size)void Write(byte[] buffer, int offset, int size)方法,在C#中实现NetToFile将从NetworkStream net实例接收的所有数据复制到FileStream file实例的方法.要进行传输,请使用异步读取和同步写入,以避免在读取操作期间阻塞一个线程.当net读取操作返回值0 时,传输结束.为简化起见,不必支持操作的受控取消.

void NetToFile(NetworkStream net, FileStream file);
Run Code Online (Sandbox Code Playgroud)

我一直试图解决这个问题,但我正在努力解决与问题本身相关的问题.但首先,这是我的代码:

public static void NetToFile(NetworkStream net, FileStream file) {
    byte[] buffer = new byte[4096]; // buffer with 4 kB dimension
    int offset = 0; // read/write offset
    int nBytesRead = 0; // number of bytes read on each cycle

    IAsyncResult ar;
    do {
        // …
Run Code Online (Sandbox Code Playgroud)

.net c# concurrency asynchronous

47
推荐指数
5
解决办法
7万
查看次数

测量ASP.NET页面加载时间

我目前正在开发一个使用a的ASP.NET应用程序,MasterPage我想测量我的应用程序webform的加载时间并将该信息显示给客户端.

我当前的策略涉及使用Application_BeginRequest事件关联回调(在Global.asax我的网站解决方案的文件中),开始测量服务器端进程所花费的时间(如下所示)

protected void Application_BeginRequest(Object sender, EventArgs e) {
   Context.Items.Add("Request_Start_Time", DateTime.Now);
}
Run Code Online (Sandbox Code Playgroud)

并计算webform OnPreRender事件关联回调的经过时间,将其打印在占位符元素上(如下所示)

protected override void OnPreRender(EventArgs e) {
   base.OnPreRender(e);

   TimeSpan tsDuration = DateTime.Now.Subtract((DateTime)Context.Items["Request_Start_Time"]);
   ExecutionTime.InnerHtml = "<em>Server-side processing duration: " + tsDuration.TotalMilliseconds + " miliseconds.</em>";
}
Run Code Online (Sandbox Code Playgroud)

这是衡量装载时间的最佳方法吗?是否有更"优雅"的方式来实现这一目标?

提前感谢您的时间和合作.

asp.net

15
推荐指数
2
解决办法
2万
查看次数

多线程应用程序与记录器线程的交互

在这里,我再次提出有关多线程和我的并发编程类的练习的问题.

我有一个多线程服务器 - 使用.NET 异步编程模型实现 - 带GET(下载)和PUT(上传)文件服务.这部分已完成并经过测试.

碰巧问题的陈述说这个服务器必须具有对服务器响应时间影响最小的日志记录活动,并且应该由低优先级线程 - 记录器线程支持 - 为此效果创建.所有日志消息都应由生成它们的线程传递给此记录器线程,使用可能不会锁定调用它的线程的通信机制(除了必要的锁定以确保互斥)并假设某些日志消息可能被忽略.

这是我目前的解决方案,请帮助验证这是否是解决所述问题的方法:

using System;
using System.IO;
using System.Threading;

// Multi-threaded Logger
public class Logger {
    // textwriter to use as logging output
    protected readonly TextWriter _output;
    // logger thread
    protected Thread _loggerThread;
    // logger thread wait timeout
    protected int _timeOut = 500; //500ms
    // …
Run Code Online (Sandbox Code Playgroud)

.net c# logging multithreading concurrent-programming

6
推荐指数
1
解决办法
3425
查看次数

WebLogic集群单例服务

我目前正在尝试使用WebLogic群集在WebLogic上实现单例服务.我已经在WebLogic上阅读了一些关于集群单例服务的文献,我知道我必须在我想要作为单例聚类的对象上实现weblogic.cluster.singleton.SingletonService接口.

import weblogic.cluster.singleton.SingletonService;

public class SingletonOrchestrator implements SingletonService {

    public void activate() {
        System.out.println(":: activate CALLED FOR SingletonOrchestrator");
    }
    public void deactivate() {
        System.out.println(":: deactivate CALLED FOR SingletonOrchestrator");
    }

    (...)

}
Run Code Online (Sandbox Code Playgroud)

我可以将其部署为WebLogic上的应用程序,尽管它似乎在部署后不会调用activate()和调用deactivate()方法.我不知道还需要做些什么才能让它在我的WebLogic集群中作为单例服务工作.

有没有人有这方面的经验?任何人都可以提供一个工作实例并向我解释我还有什么需要做的吗?

singleton weblogic cluster-computing

6
推荐指数
1
解决办法
1万
查看次数

WebLogic负载平衡

我目前正在开发一个支持WebLogic集群环境的项目.我已经成功地建立了产业集群,但现在我想一个负载均衡解决方案(目前仅用于测试目的,我使用WebLogic的HttpClusterServlet循环负载平衡).是否有任何文档可以清楚地比较(有利有弊)为WebLogic提供负载平衡的各种方法?

这些是我想要涵盖的主要议题:

  • 性能(正常和故障转移);
  • 可以检测到哪些故障以及故障转移恢复的速度有多快;
  • 失败的透明度(例如,自动重试幂等请求的能力);
  • 每种负载平衡解决方案如何适应各种拓扑(N层,集群)

在此先感谢您的帮助.

failover weblogic load-balancing cluster-computing

3
推荐指数
1
解决办法
2万
查看次数

为什么<button>在Firefox/Chrome中"GET",而在Opera中"POST"?

我正在开发一个网站(ASP.NET带有C#的Webform),我有一个<button>元素.

这是代码片段:

<a href="ThisPage.aspx" ID="myButtonID" runat="server">
    <button>Configure new trip</button>
</a>
Run Code Online (Sandbox Code Playgroud)

当我使用Firefox或Chrome时,此代码对此进行"GET" ThisPage.aspx.实际上,这就是我想要做的.

问题是当我使用Opera时,相同的代码会"POST".有谁知道我该怎么做才能使这个按钮以相同的方式使用Opera?

html opera button

1
推荐指数
1
解决办法
466
查看次数