问题列表 - 第38634页

使用进程间同步对象同步2个进程 - Mutex或AutoResetEvent

请考虑以下场景:我正在运行我的应用程序,在执行期间,必须运行另一个进程,并且只有在第二个进程完成内部特定初始化之后,我的第一个进程才能继续.例如:

...
// Process1 code does various initializations here
Process.Start("Process2.exe");
// Wait until Process2 finishes its initialization and only then continue (Process2 doesn't exit)
...
Run Code Online (Sandbox Code Playgroud)

我看到几个选项:

  1. Mutex - Mutex在考虑进程间通信时会自动浮现,但是,我看不到让Process1等待他自己生成的互斥锁的方法.我可以使Process2创建一个互斥锁并等待Process1,直到创建Mutex(使用轮询和Mutex.OpenExisting函数)
  2. AutoResetEvent - 那些对于任务来说是完美的,但是,似乎在.NET下这些不能用于进程间通信.
  3. CreateEvent - 我可以使用P/Invoke并使用Win32 CreateEvent函数.从理论上讲,它可以为我提供我需要的一切.但是,如果可能的话,我宁愿不使用本机函数.
  4. 使用外部文件 - 最简单的方法就是使用一些操作系统外部对象(文件,注册表等).然而,这似乎相当hacky.

我很高兴听到你对这个案子的意见.

谢谢!

.net c# pinvoke synchronization mutex

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

Drupal 7 CCK安装

有没有人设法在drupal 7上安装CCK?我收到很多错误.
我想要的原因是因为CCK不为每个字段创建2个表,它每个内容类型只创建一个表,这样更有效.

谢谢

drupal cck

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

php数组重新填充键

嗨我有一个数组,我需要以有序的方式更改键,但不要更改值的顺序.例如

$a = array (
 0=>'h',
 1=>'blabla',
 2=>'yes'
);
Run Code Online (Sandbox Code Playgroud)

我用了

unset($a[1]);
Run Code Online (Sandbox Code Playgroud)

但我需要密钥重新开始计算密钥0,1,2 ... etccc所以我不会最终:

array(
 0 => 'h',
 2 => 'yes'
)
Run Code Online (Sandbox Code Playgroud)

但它应该回来:

array(
 0 => 'h',
 1 => 'yes'
)
Run Code Online (Sandbox Code Playgroud)

php arrays sorting

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

Javascript - 如何使浏览器切换标签?

在我的代码中,定时事件启动ModalDialog.如果用户在事件之前切换选项卡,则选项卡会闪烁,但就是这样.

有没有办法让浏览器切换到对话框所在的选项卡?

谢谢

为您的所有建议干杯.我之前应该说,但代码只能通过IE运行,并且不允许用户更改任何设置.

javascript jquery

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

从列表地图中检索问题

在我的程序中,我有一个带有字符串键和列表(用户定义的类)值的映射,定义如下:

std::map<const char*, std::list<Show>> _shows;
Run Code Online (Sandbox Code Playgroud)

我有一个添加到特定列表的函数,如下所示:

void Add(Show s, const char* index) {
list<Show> lshow = _shows[index];
lshow.push_back(s); }
Run Code Online (Sandbox Code Playgroud)

但是,每次使用相同的索引调用函数,而不是返回相同的列表时,我会得到一个空列表.

我究竟做错了什么?

ETA:我看到每次调用函数后字典中的值都会增加.这可能与[]运营商有关吗?

c++ std

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

ob_start有什么问题吗?

我们应该总是在我们的应用程序中使用ob_start吗?

php

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

UIScrollView在iPhone/iPad上旋转时禁用滚动

我正在使用UIScrollView和其中的图像作为每页分页一个图像.我在旋转iPhone时遇到问题

当我旋转iPhone然后scrollViewDidScroll(滚动视图委托方法)正在调用.因此,我的分页受到干扰,页码也会发生变化.

解决办法是什么?

iphone cocoa-touch uiscrollview uikit

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

在RGB和HSB颜色值之间切换的算法

我阅读了文章算法切换RGB和HSB颜色值

Type RGBColor
     Red As Byte
     Green As Byte
     Blue As Byte
End Type

Type HSBColor
     Hue As Double
     Saturation As Double
     Brightness As Double
End Type

Function RGBToHSB(rgb As RGBColor) As HSBColor
     Dim minRGB, maxRGB, Delta As Double
     Dim h, s, b As Double
     h = 0
     minRGB = Min(Min(rgb.Red, rgb.Green), rgb.Blue)
     maxRGB = Max(Max(rgb.Red, rgb.Green), rgb.Blue)
     Delta = (maxRGB - minRGB)
     b = maxRGB
     If (maxRGB <> 0) Then
          s = 255 * Delta / maxRGB
     Else …
Run Code Online (Sandbox Code Playgroud)

c# vb.net rgb colors hsb

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

有什么替代setHomePage函数?

我需要在浏览器中设置主页,但setHomePage仅在IE中有效.

有没有办法做到这一点?(我找不到这样的结果)

非常感谢

javascript jquery

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

使用SetParent()时问题定位窗口

我试图childForm通过PInvoke使用SetParent API 设置为主Excel窗口的子项:

Form childForm = new MyForm();
IntPtr excelHandle = (IntPtr) excelApplication.Hwnd;
SetParent(childForm.Handle, excelHandle);
childForm.StartPosition = FormStartPosition.Manual;
childForm.Left = 0;
childForm.Top = 0;
Run Code Online (Sandbox Code Playgroud)

如您所见,我的目的也是将孩子放在Excel窗口的左上角.然而,由于某种原因,childForm总是在一些奇怪的位置结束.

我做错了什么?

c# excel office-automation setparent winforms

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