问题列表 - 第42053页

是否存在Control.BeginInvoke的变体,它在句柄被销毁之前/之后有效?

我有一个控件,显示底层异步对象的状态.该对象引发事件,这些事件到达表单,它们基本上排队并最终使用BeginInvoke调用.

当处理控制时出现问题.因为事情是异步发生的,意味着事件回调总是可能在处理过程中排队,我有时会得到一个InvalidOperationException(在创建窗口句柄之前,不能在控件上调用Invoke或BeginInvoke).

这不是我想要的行为.我希望回调执行即使控件已被释放(即使这会导致回调中的异常;这对我来说是一个更有用的例外!).我想处理每个回调中的处理状态行为(通常只是在处理时跳过,但有时不会[例如,一个控件记录事件(可选地记录到文件)并且我不想丢失日志数据!].).

有没有一种方法可以按我想要的方式工作?我可以自己写一个不易碎的吗?

.net controls asynchronous begininvoke winforms

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

android:MapView无法识别点击次数

我只是想让mapview识别出一个点击,以便调用另一个活动.

到目前为止,我尝试了常规的"onClick",它总是在常规视图中为我工作,然后覆盖"onTouchEvent",最后但并非最不重要的是使用onClickListener.

我将以下三种方式都放入以下代码中.任何帮助都非常感谢.

import com.google.android.maps.MapActivity;
import com.google.android.maps.MapView;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;

public class HelloMapView extends MapActivity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
     final MapView map;
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        map = (MapView) findViewById(R.id.mapview);

        map.setOnClickListener(new MapView.OnClickListener() {
         public void onClick(View v){
          System.out.println("I listened!");
         }  
        });
    }
    @Override
    protected boolean isRouteDisplayed() {
        return false;
    }

    @Override
    public boolean onTouchEvent(MotionEvent arg0) {

     System.out.println("onTouchEvent happened!");        
        super.onTouchEvent(arg0);

        return super.onTouchEvent(arg0);
        }

    public void onClick(){
     System.out.println("onClick entered!"); …
Run Code Online (Sandbox Code Playgroud)

android mapactivity android-mapview

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

有效且高效地管理许多TCP连接

我很好奇是否有人可以就如何有效管理大量TCP连接给我任何想法或建议.我正在谈论1000个TCP连接(可能更多).管理所有这些连接的应用程序需要定期从客户端(连接的另一端)提取信息.例如,可能每30秒.我会使用.NET 4.0.有没有内置任何东西来帮助这个或一个特殊的方式来构建一切来管理所有这些连接,而不会让这个应用程序陷入困境,它是无用的?

.net c# tcp c#-4.0

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

Maven Assembly插件和资源

当使用Maven程序集插件(版本2.2-beta-5)时,如果它们具有相同的路径,则看起来组装的jar将包含来自依赖项的资源,而不是正在组装的项目.具体来说,我试图弄清楚如何使用项目的log4j配置文件,而不是依赖项目.

PROJECT1

-src

- 主要

---资源

----的log4j.xml

如果Project1有一个依赖项 - 称之为Project2--在src/main/resources中也有一个log4j.xml文件,那么在运行程序集插件后,组装的jar包含Project2的log4j.xml文件而不是Project1.我相信这是因为所有的依赖项首先被解压缩,因此当它尝试解压缩顶层项目时,log4j.xml文件已经存在,因此它不会被覆盖.

是否有一个make程序集插件使用项目的文件而不是依赖项?

log4j maven maven-assembly-plugin

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

如何在Mac OSX下使用gcc设置可执行文件的运行时路径(-rpath)?

我想在编译时在Mac OSX下设置可执行文件的运行时路径(对于链接器),这样在程序启动时动态链接器可以找到非标准位置的共享库.

在Linux下,可以使用-Xlinker -rpath -Xlinker /path/to(或使用-Wl,-rpath,/path/to),在Solaris下,您可以添加-R/path/to到编译器命令行.

我发现一些信息,Mac OS X gcc自10.5以来就支持-rpath,即自2008年以来.

我尝试用最小的例子来实现它 - 没有成功:

$ cat blah.c 
int blah(int b)
{
  return b+1;
}
Run Code Online (Sandbox Code Playgroud)

和:

$ cat main.c 

#include <stdio.h>

int blah(int);

int main ()
{
  printf("%d\n", blah(22));
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

编译它像这样:

$ gcc -c  blah.c
$ gcc -dynamiclib blah.o -o libblah.dylib
$ gcc main.c -lblah -L`pwd`  -Xlinker -rpath -Xlinker `pwd`/t
Run Code Online (Sandbox Code Playgroud)

现在测试:

$ mkdir t
$ mv libblah.dylib t
$ ./a.out
dyld: Library …
Run Code Online (Sandbox Code Playgroud)

macos linker gcc shared-libraries dyld

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

win32:WM_PAINT调用,但不应该是!

我有WM_PAINT的问题.基本上我想在用户WM_COMMAND之后调用WM_PAINT,但由于某种原因它在主函数中被调用.

 case WM_PAINT:
    {
     createFont();
     PAINTSTRUCT ps;
     HBRUSH hbruzh = CreateSolidBrush(RGB(0,0,0));
     HDC hdz = BeginPaint(hWnd,&ps);
     string s = "Memory Address";

     SelectBrush(hdz,hbruzh);
     SelectFont(hdz,hf);
     TextOut(hdz,0,0,s.c_str(),s.length());
     EndPaint(hWnd,&ps);

     DeleteObject(hbruzh);
     DeleteObject(hdz);

     break;
    }




int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
               LPSTR lpCmdLine, int nCmdShow)
{
    HWND hWnd;
    WNDCLASSEX wc;
    ZeroMemory(&wc, sizeof(WNDCLASSEX));
 hThisInstance = hInstance;
 LoadLibrary("Riched20.dll");

 wc.cbSize = sizeof(WNDCLASSEX);
 wc.style = CS_HREDRAW | CS_VREDRAW;
 wc.lpfnWndProc = WindowProc;
 wc.hInstance = hInstance;
 wc.lpszMenuName = MAKEINTRESOURCE(IDR_MYMENU);
 if(!(wc.hIcon = LoadIcon(hInstance,MAKEINTRESOURCE(IDI_MYICON)))) {
  HRESULT res = GetLastError();

 }
 wc.hCursor = LoadCursor(NULL, IDC_ARROW);
 wc.hbrBackground …
Run Code Online (Sandbox Code Playgroud)

c++ winapi wm-paint

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

如何测试软件发布版本之间的代码性能?

我正在用C#/ .NET开发软件,但我想也可以问其他编程语言的问题.如何在发布版本之间测试软件的性能?让我详细说明一下.

在软件的生产发布之前,我想比较软件的性能,以获得该软件早期版本中提供的一组功能.假设您正在讨论一个软件库项目(没有GUI),这会导致一个或多个dll的发布.如何实现这一目标?有哪些最佳做法?我不可能将当前的dll与之前的版本dll交换并运行相同的测试.

我能想到的一种方法是在主分支(用于当前版本)和早期版本分支中添加相同的性能测试,然后比较性能.我认为这样做有一些痛苦,但是有可能.

我能想到的另一种方法是从lest release分支开始,删除在最后一次发布之后放入的新代码和功能,然后运行测试.我不认为这会产生正确的结果,更不用说这种方法比以前的方法更痛苦.

谢谢你的其他想法.更喜欢C#/ .NET特定的答案.

编辑1:有些相关问题.

.net c# performance

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

在包含HTML的文档上使用diff

我正处于一个用于编写和编辑文档的系统的头脑风暴过程中(想想Google Docs,但没有实时协作).我将使用WYSIWYG编辑器,因此文档将包含HTML.

编辑器将对文档进行更改,原始用户应查看这些修订并手动进行更改.

当涉及HTML标签时,如何使用diff系统?我想要修改以显示格式化的任何更改,因此,例如,如果某些内容是粗体,那么它应该接受该更改.它还应该使内容更改像普通差异一样可见.

如果我使用常规diff系统,那么它会将HTML视为常规文本,显然不是这种情况.感谢您的任何指示!

html javascript php diff

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

随机模块不工作.ValueError:randrange()(1,1,0)的空范围

在Python 2.7.1中,我导入随机模块.当我调用randint()时,我收到错误:

ValueError: empty range for randrange() (1,1, 0) 
Run Code Online (Sandbox Code Playgroud)

此错误是由random.py模块本身中的错误引起的.我不知道如何解决它,而不是重新安装python帮助.我不能改变版本.

有人可以给我一个工作模块的代码或告诉我该怎么做?

python random numbers range

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

您使用哪个Java调试器

我花了很多时间使用JPDA在Eclipse中调试应用程序.Eclipse调试器有一些问题让我非常恼火.任何人都可以推荐插件,更好的调试器或者我不知道的技巧吗?

  • 在"变量"(Variables)选项卡中,您可以键入并执行Java代码位.但是,您首先需要点击某些内容(我通常会点击"this")给它一些上下文.然后,在输入冗长的Java表达式来调试某些内容并"执行"它之后,您的表达式将被替换为结果,因此您需要重新键入它.有没有更好的方法,比如控制台或我缺少的东西?
  • 当你在浏览数据结构时,调试器中的表示还有很多不足之处.你会看到Lists,Maps,StringBuilders等的内部表示.我想看到的是这些对象在概念上包含的内容.有没有办法做到这一点,可能使用其他调试器,或扩展或什么?
  • 抛出异常时,是否有某种方法可以检查抛出异常的应用程序的状态?目前我需要在Exception发生之前设置断点,然后尝试重现它.
  • 当我踩到一条带有许多语句的行时,我实际上无法看到哪些语句正在被执行,除非"踩到"每个语句以查看它在哪里.
  • 如果没有找到源代码,Eclipse只会茫然地盯着你看.你得到一个有用的屏幕,说"找不到类文件编辑器/源代码"这是完全没用的.我更喜欢能够逐步执行字节码,所以我至少可以看到发生了什么.有没有人知道Java调试器比Eclipse更好?

java eclipse debugging jpda

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