- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是计算机科学专业的第三年,所以我应该已经知道这个问题的答案了,但我还是不知道。无论如何,我目前正在攻读操作系统类(class),我们已经涵盖了许多新的编程概念,例如 C 中的信号、信号量和线程。不幸的是,我的教授在 Linux/OS 中涵盖了所有这些X视角。这对我来说意味着什么,在 64 位 Windows 机器上,安装警报信号或使用信号量和 pthreads 之类的东西不会在我的机器上编译或运行(据我所知)。
无论如何,目前我只是在运行 Linux 的 VM 中完成作业,到目前为止运行良好,但我更喜欢 Windows 环境进行编码。
所以,在冗长的介绍之后,我的问题是,正如您可能已经猜到的那样,是否有一种方法可以使用所有这些功能(警报信号、信号量、pthreads 等)进行编码并能够编译和测试他们在 Windows 中?我完全知道 Windows 操作系统不支持警报信号并且 POSIX 功能有限,但我听说过关于 cygwin(我确实尝试开始工作,但不是很努力 :P)和 micro您可以在后台运行以使用这些功能的 Linux 内核。
无论如何,如果有人能给我一份他们会推荐的选项列表(最好不要坚持使用您的 VM,即使我认为这可能是我最好的选择),也许还有一些技巧、优点、缺点,也许是安装指南,或者这些选项的任何非空子集,我真的很感激。另外,在你问之前,我们必须在作业中使用 C 和上面提到的编程功能,所以不幸的是没有切换到 Java 或 win32 中的代码选项:(
提前感谢任何可以提供一些智慧的话的人:)
最佳答案
基本原则在 Windows 中都有,但实现方式不同。我建议,如果您打算为 Windows 编程,则在 Windows API 中执行此操作,而不是通过像 Cygwin 这样的仿真层。如果有的话,您很快就会了解到不同的操作系统采用不同的方法来处理信号和进程。
首先要注意的是,线程在 Windows 中要轻量级得多,而进程则要重量级得多。考虑到这一点,Windows 程序在使用线程时运行效率最高。有CriticalSection的概念你应该非常熟悉。和 Semaphore Object .继续阅读 API,您会发现有关这些主题的大量信息——Microsoft 文档实际上相当不错。了解 Windows API 的一个关键点是,您几乎总是必须先“创建/获取”一个新对象(并获得一个句柄),然后才能使用它。 Windows 不喜欢有太多句柄的程序。
就我个人而言,我喜欢 POSIX API 并且热爱 Linux。但我很感激,如果您想在 Windows 中正确地做事,您应该使用 Windows 操作系统 API - 尽管结果和方法可能有些不同,但他们已经仔细考虑过这一点。
PS Windows 没有“警报”。这可能是将 Unix/Linux 实用程序简单地移植到 Windows 的唯一最令人望而却步的障碍。 (这一点以及 Windows 进程在使用之前必须“引导”Internet/套接字支持这一事实,而 Linux 进程则很好)。
关于c - Windows 中的高级 C 编程(pthreads、信号和信号量,天哪!),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17505608/
到目前为止,我尝试的任何方法都未能让 Firefox 在某些文本下划线。 根据 Google 结果,这个问题已为人所知并已记录了五年多......这不可能是真的......到底发生了什么? 有人知道任
考虑一个示例,其中方法是纯虚拟的,采用模板化类型的参数(从外部类型注入(inject)),并且该模板化类型是本地类型(在函数体中定义)。这种情况会导致 g++ 下的编译时错误。不可否认,这是一个极端案
更新“Web 应用程序”(从开发服务器“重新发布”到实时服务器)同时保留用户数据(例如存储在文件系统中的图像、视频和音频)的最佳方法是什么) 在 VS 2010 构建/发布设置中? 此外,在这些更新期
本人第一次发帖,如有错误请多多包涵。另外,这是我第一次广泛使用 jquery,所以再一次...不要打败我。 好吧,情况如下... 我有一个 WP 模板,它的 jquery 相当多(不是我的),我不想尝
我试图用鼠标在 Canvas 上画一个圆圈,但我的数学是错误的,我不知道如何修复它。我希望当您单击并拖动以形成圆圈时,圆圈的顶部(或底部)和圆圈的侧面与光标的十字准线对齐。 我有一个 fiddle s
大家好, 我确信我陷入了回调噩梦,试图从传递 {query} 的 Mongoos.count 获取简单值。我可以在回调中获取该值并在控制台中看到它正常,但是尝试将其从异步回调设置中取出来却让我感到困惑
box model应该很简单,但我就是不明白。 这是一个无意义的表格 Box model test Box 1 Box 2 及其 CSS body
背景:我正在研究 framework它基于现有的 Java 类模型生成 C++ 代码。因此,我无法更改下面提到的循环依赖。 给定: 父子类关系 父级包含子级列表 用户必须能够在运行时查找列表元素类型
F#一出来,我就要在异步/并行编程领域发财了。一个 answer to this question在描述 Tasks、Parallel LINQ 和 Reactive Framework 之间的差异方
我正在尝试了解 iPhone 操作系统上的 OpenGL 对象模型。我当前正在屏幕上渲染到几个不同的 UIView(基于 CAEAGLayer 构建)。我目前将其中每一个都使用单独的 EAGLCont
关于 Google map 、AJAX 和一些后端数据的快速问题。 我将如何创建使用我存储在数据库中的信息“实时”更新的谷歌地图? 我认为它在我脑海中运作的方式是。 数据库从用户那里收集带有地理标记的
简单地说,我正在尝试制作一款全屏游戏。 我尝试使用以下代码: GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironm
好的.....我已经完成了所有相关问题的阅读和一些 MSDN 文章,以及大约一天的谷歌搜索。 这个问题的当前“最先进”答案是什么: 我正在使用 VS 2008,C++ 非托管代码。我有一个包含很多 D
在开发内容管理系统时,我遇到了一些困难。回到我的数据模型,我注意到一些问题可能会随着时间的推移变得更加普遍。 即,我想维护用户记录修改的审计跟踪(更改日志)(甚至会记录用户记录修改)。由于包含任意数量
假设我有一个很大的对象列表(数千或数万),每个对象都带有一些标签。有数十或数百个可能的标签,它们的使用遵循典型的幂律:有些标签使用得非常频繁,但大多数很少见。事实上,除了最常见的几十个标签之外,所有标
和我一起回到三年前吧。我记得构建的 Web 控件通过 AJAX 动态插入到页面的 HTML 中,然后就地呈现。我们使用了 Prototype JavaScript 库和 XMLHTTP Request
这里很沮丧。我不是数据库管理员,但可以绕过。我正在针对 Progress OpenEdge 数据库编写一些 ODBC 查询,我们只能查看该数据库。很长一段时间以来都没有出现任何问题,直到最近他们更改了
我认为我面临着一种独特的情况,主要是因为我找不到任何可以帮助我解决这个问题的方法。我正在尝试在蒙版元素内添加视差效果。在元素可以......“视差?”之前......它必须滑入视野,在蒙面容器内。 在
您在 Rails 应用程序的 Selenium 测试中使用哪些数据?您是否从固定装置加载?使用现有的开发数据库?使用单独的(非 fixture )数据库? 我正在考虑我的选择。我有一个带有大型 Sel
我有一个 Ruby on Rails 项目(使用 git 进行版本控制),其中包含许多存在于各种公共(public) GitHub 存储库中的外部 JavaScript 依赖项。将这些依赖项包含在我的
我是一名优秀的程序员,十分优秀!