小编Gui*_*ume的帖子

C#在自己的线程中执行的线程之间的事件(如何)?

我想要两个主题.我们打电话给他们:

  • 线程A.
  • 线程B.

线程A触发事件,线程B侦听此事件.当执行线程B事件侦听器时,它是用线程A的线程ID执行的,所以我猜它是在线程A中执行的.

我想做的是能够向线程B发起事件,例如:"嘿,数据已准备就绪,你现在可以处理它".此事件必须在其自己的Thread中执行,因为它使用只有他可以访问的内容(如UI控件).

我怎样才能做到这一点 ?

谢谢你的帮助.

c# events multithreading delegates

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

如何处理不同时区的日期和时间?

我正在开发一个国际软件,作为一个简单的项目管理软件,我正面临一个问题.此问题与日期/小时和时区有关.
当消息从一个时区发送到另一个时区时,我可以将UTC(GMT)时间存储在我的数据库中,然后根据用户的时区显示不同的时间.但是当我只使用日期时,这不可能完成.
如果我说任务是在3月21日.我是否应该考虑在其他一些国家这个日期可能是20或22?你对这个问题有什么建议?

time localization date internationalization

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

我应该在Kubernetes前面添加DMZ吗?

Kubernetes Ingress是否足够安全,可以避免在Kubernetes前面添加DMZ来暴露Pod和Services?如果有人“入侵”了豆荚会怎样?

谢谢。

dmz docker kubernetes kata-containers

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

从第三方保护C#DLL

重复:如何保护dll?

我想保护我的C#DLL不被第三方应用程序使用.我只想使用MY applycation来使用这个DLL.我怎样才能实现这一目标?

谢谢.

c# dll protection

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

将位图保存到视频(libavcodec ffmpeg)

我想使用libavcodec将HBitmap转换为视频流.我使用以下方法获取HBitmap:

HBITMAP hCaptureBitmap =CreateCompatibleBitmap(hDesktopDC, nScreenWidth, nScreenHeight);
SelectObject(hCaptureDC,hCaptureBitmap); 
BitBlt(hCaptureDC,0,0,nScreenWidth,nScreenHeight,hDesktopDC,0,0,SRCCOPY);
Run Code Online (Sandbox Code Playgroud)

我想将它转换为YUV(这是我正在使用的编解码器所要求的).为此,我使用:

SwsContext *fooContext = sws_getContext(c->width,c->height,PIX_FMT_BGR32,   c->width,c->height,PIX_FMT_YUV420P,SWS_FAST_BILINEAR,NULL,NULL,NULL);

uint8_t *movie_dib_bits = reinterpret_cast<uint8_t *>(bm.bmBits) + bm.bmWidthBytes * (bm.bmHeight - 1);

int dibrowbytes = -bm.bmWidthBytes;

uint8_t* data_out[1];
int stride_out[1];
data_out[0] = movie_dib_bits;
stride_out[0] = dibrowbytes;

sws_scale(fooContext,data_out,stride_out,0,c->height,picture->data,picture->linesize);  
Run Code Online (Sandbox Code Playgroud)

但这根本不起作用......任何想法为什么?或者我怎么能这样做呢?

谢谢 !

c++ video ffmpeg video-capture

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

空对象不为空

我使用双线程(http://www.codeproject.com/KB/threads/DoubleQueue.aspx)使用2个线程来充当产品/消费者.有时在我的第二个线程中,我得到一个NULL的对象,但它不应该像我在第一个线程中填充它一样.

我试过这个:

if(myObject.Data == null)
{
  Console.WriteLine("Null Object") // <-- Breakpoint here
}
Run Code Online (Sandbox Code Playgroud)

当我的断点点击时,我可以看到myObject.Data,实际上它是NULL,但是当我点击F10然后转到下一行(这是})myObject.Data 不是 NULL.我之前也在myObject上添加了一个锁

如果....

确保没有人会使用这个物体.

怎么可能,我该怎么办?

c# null multithreading object

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