- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不明白为什么这不起作用:
void __cdecl main_pipe_client(void * Args)
{
py_func python_func;
BOOL bRet;
DWORD size = 0;
hpipe = CreateFile(TEXT("D:/stc_5010"), GENERIC_READ | GENERIC_WRITE, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_HIDDEN, NULL);
if (hpipe == INVALID_HANDLE_VALUE)
{
// its OK there is no error
}
while (1)
{
char wiadomosc[50];
bRet = ReadFile(hpipe, wiadomosc, 50, &size, NULL);
//READING ONLINE
if (bRet == FALSE)
{
python_func.py_AppendChat(1, 1, "Read Failed : Bytes Read : %u", size);
break;
}
if (size > 0){
// There is OK
}
Sleep(1500);
size = 0;
}
}
hpipe - 在程序开始处声明 HANDLE hpipe;
void init(){
Sleep(500);
py_func python_func;
char buf[256];
DWORD wpisano = 0;
sprintf_s(buf, "INIT_CHARACTER");
if (!WriteFile(hpipe, buf, 256, &wpisano, NULL)){
char buf5[256];
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(),
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), buf5, 256, NULL);
sprintf_s(buf5, "%s %d", buf5, GetLastError());
MessageBoxA(NULL, (LPCSTR)buf5, (LPCSTR) "ERROR", NULL); // return error 6
}
}
但是如果我在 main_pipe_client 函数 writefile 中循环 while ,那就没问题了。并将数据写入文件。但是如果我在之后使用这个 func init()
HANDLE hThread = (HANDLE)_beginthread(main_pipe_client, 0, NULL);
然后 writefile 返回无效句柄...
最佳答案
由于您是在线程内创建管道,因此调用 WriteFile() 时 hpipe HANDLE 可能无效。您需要“同步”线程才能正常工作。
创建一个event说“MyPipeCreateEvent”,该事件将在成功执行 CreateFile()
后由 main_pipe_client()
设置。在“MyPipeCreateEvent”上的 init()
、WaitForSingleobject()
中,仅在设置事件时才继续执行 WriteFile。
关于CreateFile/readfile & writefile 多线程 - 无效句柄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21849619/
我设置了 Helm 柄和 Helm 柄。我有tiller-deploy。昨天,我可以定期运行了。但今天我收到此错误消息 Error: could not find a ready tiller pod
我以前已将分er安装到特定的 namespace 中。 我设置了一个环境变量来设置'tiller'命名空间-但我不记得该环境变量的名称-而且似乎无法通过网络搜索找到它。 这是什么 key ? 最佳答案
当我在 View 模型中使用如下界面时 class MainViewModel @ViewModelInject constructor( private val trafficImagesR
我正在尝试找到如何在某个 fragment 相关场景中定义 Hilt 的解决方案。我有以下设置: Activity 父 fragment 1 子 fragment 1 子 fragment 2 ...
Hilt 指出如果没有@Provides 注解就不能提供这个接口(interface): interface PlannedListRepository { fun getAllLists()
我的问题非常简单明了:两个注释/示例之间有什么区别: 例子一 @Singleton class MySingletonClass() {} @Module @InstallIn(FragmentCom
我是一名优秀的程序员,十分优秀!