问题列表 - 第37820页

为什么不能重新启动Java Thread对象?

我知道不可能重新启动使用过的Java Thread对象,但是我没有找到解释为什么不允许这样做的原因.即使保证线程已经完成(参见下面的示例代码).

我不明白为什么start()(或者至少是restart())方法不能以某种方式将Thread对象的内部状态(无论它们是什么)重置为新建Thread对象时的相同值.

示例代码:

class ThreadExample {

  public static void main(String[] args){

    Thread myThread = new Thread(){
      public void run() {
        for(int i=0; i<3; i++) {
          try{ sleep(100); }catch(InterruptedException ie){}
          System.out.print(i+", ");
        }
        System.out.println("done.");
      }
    };

    myThread.start();

    try{ Thread.sleep(500); }catch(InterruptedException ie){}
    System.out.println("Now myThread.run() should be done.");

    myThread.start(); // <-- causes java.lang.IllegalThreadStateException

  } // main

} // class
Run Code Online (Sandbox Code Playgroud)

java multithreading

14
推荐指数
2
解决办法
5836
查看次数

反序列化XML时忽略指定的编码

我试图通过套接字读取从外部接口收到的一些XML.问题是XML头中的编码指定错误(它表示iso-8859-1,但它是utf-16BE).据记载,编码是utf-16BE,但显然他们忘记设置正确的编码.

要在反序列化时忽略编码,我使用如下的StringReader:

    private static T DeserializeXmlData<T>(byte[] xmlData)
    {
        var xmlString = Encoding.BigEndianUnicode.GetString(xmlData);
        using (var reader = new StringReader(xmlString))
        {
            reader.ReadLine(); // Eat header line
            using (var xmlReader = XmlReader.Create(reader))
            {
                var serializer = new XmlSerializer(typeof(T));
                return (T)serializer.Deserialize(xmlReader);
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

以上实际上工作正常,但我不喜欢通过调用ReadLine跳过标题行的部分.是否有一种不那么脆弱的方法来绕过XML标头中指定的编码?

使用StreamReader解决方案

通过使用StreamReader,我可以覆盖XML头中指定的编码.指定XmlReaderSettings.IgnoreProcessingInstructions与否没有任何区别.有趣的是,如果StreamReader找到unicode字节顺序标记,则忽略指定的编码.

回顾一下:

  • 如果使用TextReader初始化XmlReader,则忽略XML标头编码.
  • 如果使用StringReader,则如果存在unicode字节顺序标记,则XmlReader将失败.
  • 如果使用StreamReader,则unicode字节顺序标记将覆盖StreamReader编码.
  • 使用TextReader时,XmlReaderSettings.IgnoreProcessingInstructions = true没有区别.

总之,最强大的解决方案似乎是使用StreamReader,因为它使用字节顺序标记(如果存在).

    private static T DeserializeXmlData<T>(byte[] xmlData)
    {
        using (var xmlDataStream = new MemoryStream(xmlData))
        {
            using (var reader = new StreamReader(xmlDataStream, Encoding.BigEndianUnicode))
            {
                using (var xmlReader = XmlReader.Create(reader))
                {
                    var serializer …
Run Code Online (Sandbox Code Playgroud)

.net xml xmlserializer stringreader

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

最快的python DNS库

在多任务处理中,哪个库是最快的数百个DNS查询.

我用Google搜索了围绕DNS库的python.我发现adns据说是最快的.但它不兼容Windows.python是否有任何跨平台兼容的DNS库?

python

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

jquery ajaxStart无法正常工作

如果你点击这里点击这里订购按钮:http: //www.game onglove.com/ gog/test3.html,然后点击弹出的lightboxed窗口上的相同按钮,ajax请求将使用$运行.员额().

您可以点击"继续购物"返回上一个灯箱窗口以快速重新开始.

如果我在控制台(chrome或firefox)中执行jquery代码,那么它可以正常工作.它只是不会在源代码中的位置工作:

$('#cboxLoadingGraphic').ajaxStart(function() {
$(this).show();
$('#cboxLoadedContent').hide();
}).ajaxStop(function() {
$(this).hide();
$('#cboxLoadedContent').fadeIn('slow');
});
Run Code Online (Sandbox Code Playgroud)

为什么它可以从控制台工作,但不能在源中的当前位置工作?我如何让它工作?

ajax jquery

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

在java中强制列出<>?

你好可以投一个名单吗?

我有一个抽象类,它有一个方法,它采用某种List <>,在for循环中迭代它,获取该列表中的每个对象,并调用子类实现的insertItem抽象方法,基本上拉出正确的项目中的数据,然后最终将它们插入数据库表.

这是超类方法:

protected void insertAllItemsToDb(List<Object> items, String table) {
        // open db and table

        database().beginTransaction();
        // clear all data from table
        clearTable(table);
        // call a insert statement to insert each column from an item
        for (Object object : items) {
            insertItem(object, table);
        }
        // close db
        database().endTransaction();
        database().close();
    }
Run Code Online (Sandbox Code Playgroud)

在子类中,这是一个覆盖方法:我能够在这里强制转换对象.

  @Override
    protected void insertItem(Object object, String table) {

        CalendarEventItem item = (CalendarEventItem) object;
        eventItemValue = new ContentValues();

        eventItemValue.put(LABEL_EVENTS_TITLE, item.getEventTitle());
        eventItemValue.put(LABEL_EVENTS_LOCATION, item.getEventLocation());
        eventItemValue.put(LABEL_EVENTS_DATE, item.getEventStartTime()
                .getDate());
        eventItemValue.put(LABEL_EVENTS_TIME, item.getEventStartTime()
                .getTime());
        eventItemValue.put(LABEL_EVENTS_TIMEZONE, …
Run Code Online (Sandbox Code Playgroud)

java

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

为什么我的ASP.Net站点在IIS7下运行需要很长时间才能在一段时间不活动后加载?

第一次加载页面时,ASP.NET网页可能需要大约10秒左右,这是可以理解的,因为东西正在被JIT加载,应用程序域被加载等等.下一个请求只需要半秒钟左右.但是,如果没有人在几个小时内访问该网站,那么在这段不活动时间之后的第一个请求将再次花费10或20秒.

这就好像IIS感到无聊并卸载了一大堆垃圾.如何让它不这样做?即使我没有获得大量流量,我希望网站始终保持快速.

这是一个专用的Web服务器,没有用户登录,也没有其他用户模式应用程序在运行.可以使用几次内存,因此不应将任何内容分页到磁盘.

windows asp.net iis iis-7

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

上传图片而不会丢失质量

我使用这个类来上传和调整图像大小.问题是图像质量不好!我需要上传图像而不会丢失质量!

class SimpleImage {

   var $image;
   var $image_type;

   function load($filename) {
      $image_info = getimagesize($filename);
      $this->image_type = $image_info[2];
      if( $this->image_type == IMAGETYPE_JPEG ) {
         $this->image = imagecreatefromjpeg($filename);
      } elseif( $this->image_type == IMAGETYPE_GIF ) {
         $this->image = imagecreatefromgif($filename);
      } elseif( $this->image_type == IMAGETYPE_PNG ) {
         $this->image = imagecreatefrompng($filename);
      }       
   }

   function save($filename, $image_type=IMAGETYPE_JPEG, $compression=75, $permissions=null) {
      if( $image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image,$filename,$compression);
      } elseif( $image_type == IMAGETYPE_GIF ) {
         imagegif($this->image,$filename);         
      } elseif( $image_type == IMAGETYPE_PNG ) {
         imagepng($this->image,$filename);
      }   
      if( $permissions …
Run Code Online (Sandbox Code Playgroud)

php

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

char*值在赋值期间被破坏

我有以下代码,它从函数中获取返回值 char*

cDestDrive = ReadFromRegistry(HKEY_CURRENT_USER,NDSPATH,szDestPathRoot);
Run Code Online (Sandbox Code Playgroud)

我可以读取内部的值,cDestDrive 直到我分配它为止.我分配它的那一刻:

 CString strServerAddress = cDestDrive;
Run Code Online (Sandbox Code Playgroud)

cDestDrive的值被更改(损坏),我无法获得CString strServerAddres任何想法的价值,为什么会发生这种情况.

编辑: 从注册表中读取的代码

char* CNDSShellExtender::ReadFromRegistry(HKEY hKey,LPCTSTR lpNDS,LPSTR lpRegKey)
{

        HKEY hRegKey=NULL;
        if(hKey==NULL || lpNDS==""||lpNDS==NULL||lpRegKey==""||lpRegKey==NULL)
            MessageBox(NULL,"Reading from Registry Failed!Invalid Path",
                                            _T("Network Drive Solution"),
                                                           MB_ICONERROR);

        LONG lOpenRes=RegOpenKey(hKey,lpNDS,&hRegKey);

        if (lOpenRes!=ERROR_SUCCESS ||lpNDS==NULL) 
            MessageBox ( NULL, "Can not Find Any Server to Connect",
                                            _T("NDSShellExtension"),
                                                     MB_ICONERROR );


        if(lOpenRes==ERROR_SUCCESS && lpNDS!=NULL)
        {
            TCHAR tSZValue[MAX_PATH] = {0};
            DWORD dwBufSize=MAX_PATH;
            LONG lCloseOut;
            LPBYTE lpStorage = reinterpret_cast<LPBYTE>(tSZValue);
            char* cpRegKeyVal=tSZValue;

            if (ERROR_SUCCESS == RegQueryValueEx(hRegKey,lpRegKey , 0, …
Run Code Online (Sandbox Code Playgroud)

c++ windows cstring

0
推荐指数
2
解决办法
371
查看次数

来自asp.net的.skin vs .css

asp.net .skin.cssasp.net 之间的主要区别是什么?

.skin是IDE的新增强功能.我一直在和你一起工作.css.可用的.skin是不是.css

谢谢,saj

asp.net theming

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

列数按元素计算

如何实现awk '{print $1}' /tmp/data | sort | uniq -cR中特定列的等效?

示例:cat/tmp/data

alama 
alama
alama
bbbb
bbbb
ccc
alama
bbbb
bbbb
Run Code Online (Sandbox Code Playgroud)

awk'{print $ 1}'/ tmp/data | 排序| uniq -c

  1 
  4 alama
  4 bbbb
  1 ccc
Run Code Online (Sandbox Code Playgroud)

即列中每个项目的计数.


基于@Joshua的建议和我的特殊需求......

s<-data.frame(table(spam[,1]))
p<-s[s$Freq>=3,]
p[order(p$Freq,decreasing=TRUE ),]
Run Code Online (Sandbox Code Playgroud)

r

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

标签 统计

asp.net ×2

java ×2

windows ×2

.net ×1

ajax ×1

c++ ×1

cstring ×1

iis ×1

iis-7 ×1

jquery ×1

multithreading ×1

php ×1

python ×1

r ×1

stringreader ×1

theming ×1

xml ×1

xmlserializer ×1