问题列表 - 第21807页

能够重置使用yield生成的IEnumerator(C#)

如果我使用yield而不是手动创建IEnumerator,是否可以实现IEnumerator.Reset?

c#

18
推荐指数
3
解决办法
4159
查看次数

如何编写服务器/客户端视频和音频流应用程序?

我必须创建一个客户端/服务器系统来流式传输视频和音频.这很简单.喜欢youtube风格.服务器应首先参加提供媒体列表的客户端,并等待每个客户端的选择以开始流式传输媒体.直到创建一个套接字并显示一个简单的列表我就在它上面;)但我不知道我可以使用哪个类来传输.这个例子基本上是youtube风格.如何开始流式传输,客户端如何暂停再现,怎么样?我知道如何流式传输文字,但视频呢?你知道任何教程页吗?它与这个简单的服务器客户端示例有很大不同?

import java.io.*; 
import java.io.*;
import java.net.*;

public class ThreadedEchoServer {

   public static void main(String[] args) {
      try {
         int i = 1;
         ServerSocket s = new ServerSocket(8189);

         while(true) {
            Runnable r = new ThreadedEchoHandler(incoming, i);
            Thread t = new Thread(r);
            t.start();
            i++;
         }
      } catch (IOException e) {
         e.printStackTrace();
      }
   }
}

class ThreadedEchoHandler implements Runnable {
   private Socket incoming;
   private int counter;

   public ThreadedEchoHandler(Socket i, int c) {
      incoming = i;
      counter = c;
   }

   public void run() …
Run Code Online (Sandbox Code Playgroud)

java sockets streaming multithreading client-server

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

getResourceAsStream()vs FileInputStream

我试图在webapp中加载一个文件,FileNotFound当我使用时我得到了一个例外FileInputStream.但是,使用相同的路径,我能够在我这样做时加载文件getResourceAsStream().这两种方法之间有什么区别,为什么一种方法有效而另一方方法无效?

java file-io web-applications fileinputstream

168
推荐指数
5
解决办法
19万
查看次数

我是否更喜欢常量而不是定义?

在C中,我是否更喜欢常量而不是定义?我最近阅读了很多代码,所有的例子都大量使用了定义.

c const c-preprocessor

46
推荐指数
5
解决办法
4342
查看次数

FileSystemWatcher触发后 - 线程池还是专用线程?

我即将实现原型FileSystemWatcher解决方案.我有一个目录来监控文件创建,以及吸收创建的文件并将其插入数据库的任务.大致这将涉及读取和处理6或7,80个字符文本文件,每隔几秒发生一次150毫秒的爆发,并且很少还需要处理2MB二进制文件.这很可能是一个24/7的过程.

从我读到的有关FileSystemWatcher对象的内容来看,最好将其事件排入一个线程,然后在另一个线程中将它们出列/处理.我现在遇到的困境是进行处理的线程的更好的创建机制.我能看到的选择是:

  1. 每次我收到FSW事件时,我都会手动创建一个新线程(是的,我知道......愚蠢的架构,但我必须说出来).

  2. 每当我收到FSW事件时,都会在CLR线程池中抛出处理

  3. 在启动时,为处理创建专用的第二个线程,并使用生产者/消费者模型来处理工作.主线程将请求排队,第二个线程将其排队并执行工作.

我倾向于将第三种方法作为首选方法,因为我知道工作线程将始终是必需的 - 而且可能更多因为我对线程池没有感觉.

c# multithreading filesystemwatcher threadpool

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

Django:返回404状态代码的自定义404处理程序

我正在处理的项目有一些需要传递给每个视图的数据,所以我们有一个render_to_response被调用的包装器master_rtr.好.

现在,我需要404页面来完成这个.根据说明,我创建了一个custom_404调用master_rtr 的自定义404处理程序(巧妙地调用).一切看起来都不错,但我们的测试都失败了,因为我们收到了200 OK.

所以,我试图弄清楚如何返回404状态代码.这里似乎是一个HttpResponseNotFound类还挺我想要什么,但我不太清楚如何构建所有的废话,而不是使用render_to_response.或者更确切地说,我可能想出来,但似乎他们必须是一个更容易的方式; 在那儿?

代码的适当部分:


 def master_rtr(request, template, data = {}):
  if request.user.is_authenticated():
   # Since we're only grabbing the enrollments to get at the courses, 
   # doing select_related() will save us from having to hit database for
   # every course the user is enrolled in
   data['courses'] = \
    [e.course for e in \
     Enrollment.objects.select_related().filter(user=request.user) \
     if e.view]
  else:
   if "anonCourses" in request.session:
    data['courses'] = request.session['anonCourses']
   else: …
Run Code Online (Sandbox Code Playgroud)

django http-status-code-404

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

使用Row_Number在Sql Server 2008中实现表分页是否有任何性能问题?

我想使用此方法实现表分页:

SET @PageNum = 2;
SET @PageSize = 10;

WITH OrdersRN AS
(
    SELECT ROW_NUMBER() OVER(ORDER BY OrderDate, OrderID) AS RowNum
          ,*
      FROM dbo.Orders
)

SELECT * 
  FROM OrdersRN
 WHERE RowNum BETWEEN (@PageNum - 1) * @PageSize + 1 
                  AND @PageNum * @PageSize
 ORDER BY OrderDate ,OrderID;
Run Code Online (Sandbox Code Playgroud)

有什么我应该知道的吗?表有数百万条记录.

谢谢.

编辑: 使用建议的MAXROWS方法一段时间后(这真的非常快)我不得不切换回ROW_NUMBER方法,因为它具有更大的灵活性.到目前为止,我对它的速度也非常满意(我正在使用包含10列的超过1M记录的View).要使用任何类型的查询,我使用以下修改:

PROCEDURE [dbo].[PageSelect] 
(
  @Sql nvarchar(512),
  @OrderBy nvarchar(128) = 'Id',
  @PageNum int = 1,
  @PageSize int = 0    
)
AS
BEGIN
SET NOCOUNT ON

 Declare @tsql …
Run Code Online (Sandbox Code Playgroud)

sql-server paging

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

宏返回它在C中给出的参数数量?

是否可以编写一个返回其参数数量的C宏?

我想做的事情:

foo(1) -> 1
foo(cat, dog) -> 2
foo(red, green, blue) -> 3
Run Code Online (Sandbox Code Playgroud)

如果可以以这样的方式定义这个宏以便它与##一起工作,那就更好了

foo(1) -> bar1(1)
foo(cat, dog) -> bar2(cat, dog)
foo(red, green, blue) -> car3(red, green, blue)
Run Code Online (Sandbox Code Playgroud)

谢谢!

编辑:我真的想要一个宏,而不是一个函数.使用功能的建议将被低估.

c c-preprocessor

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

在python中查找最大有符号短整数

如何在Python中获得最大有符号短整数(即C的limits.h中的SHRT_MAX)

我想从*.wav文件的单个通道中标准化样本,所以我想要一堆介于1和-1之间的一堆浮点数,而不是一堆16位有符号整数.这是我得到的(相关代码在normalized_samples()函数中):

def samples(clip, chan_no = 0):
    # *.wav files generally come in 8-bit unsigned ints or 16-bit signed ints
    # python's wave module gives sample width in bytes, so STRUCT_FMT
    # basically converts the wave.samplewidth into a struct fmt string
    STRUCT_FMT = {  1 : 'B',
                    2 : 'h' }

    for i in range(clip.getnframes()):
        yield struct.unpack(STRUCT_FMT[clip.getsampwidth()] * clip.getnchannels(), 
                clip.readframes(1))[chan_no]

def normalized_samples(clip, chan_no = 0):
    for sample in samples(clip, chan_no):
        yield float(sample) / float(32767) …
Run Code Online (Sandbox Code Playgroud)

python struct

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

rand()引起的浮点异常在c ++中

我有一个似乎无法解决的问题.我随机生成数字以确定我的数字是否是相对论素数.

这是给我一个浮点异常的函数:

bool modularExponentiationTest(unsigned long long exponent, unsigned long long modulus)
{
    short index = 0;
    unsigned long long base;
    unsigned long long result;

    do
    {
            result = 1;
            base = rand() % exponent; // <--CAUSED BY THIS

            while (exponent > 0) 
            {
                if (exponent & 1)       
                        result = (result * base) % modulus;
                exponent >>= 1;
                base = (base * base) % modulus;
            }

            if (result != 1)
                return false;
    }while(++index < 10);

    return true;
}
Run Code Online (Sandbox Code Playgroud)

通过执行以下操作,我在不同的函数中实现随机种子:

 srand(time(NULL));
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助!

c++ floating-point-exceptions

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