小编pax*_*blo的帖子

什么是优先倒置?

关于操作系统的开发,我听过"优先级倒置"这个短语.

什么是优先倒置?

它要解决的问题是什么,它是如何解决的?

operating-system priority-inversion

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

如何在C中实现循环缓冲区?

我需要一个固定大小(在创建它时可在运行时选择,而不是编译时)循环缓冲区,它可以容纳任何类型的对象,并且它需要非常高的性能.我不认为会有资源争用问题,因为虽然它是在多任务嵌入式环境中,但它是一个合作的,所以任务本身可以管理它.

我最初的想法是在缓冲区中存储一个简单的结构,它包含类型(简单的枚举/定义)和一个指向有效负载的void指针,但我希望它尽可能快,所以我愿意接受绕过的建议堆.

实际上我很高兴绕过任何标准库的原始速度 - 从我所看到的代码来看,它没有针对CPU进行大量优化:看起来他们只是为了类似的东西编译C代码,strcpy()没有手工编码组装.

任何代码或想法将不胜感激.所需的操作是:

  • 创建具有特定大小的缓冲区.
  • 放在尾巴上.
  • 从头上得到.
  • 归还计数.
  • 删除缓冲区.

c circular-buffer data-structures

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

如何在javascript中修剪前导和尾随逗号?

我有一个字符串,如下所示.

,liger, unicorn, snipe,
Run Code Online (Sandbox Code Playgroud)

如何在javascript中修剪前导和尾随逗号?

javascript

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

我们应该雇用在Perl中编写C的人吗?

我的一位同事最近采访了一些求职者,其中一位表示他们有非常好的Perl经验.

由于我的同事不认识Perl,他要求我批评一些潜在雇员编写的(异地)代码,所以我看了一眼并告诉他我的担忧(主要的是它最初没有评论)而且它不像我们给他们足够的时间).

但是,代码有效,所以我不愿意在没有更多输入的情况下说不行.另一个问题是,这段代码基本上看起来就像我在C中编写代码一样.自从我做Perl以来已经有一段时间了(我没有做很多事情,我更喜欢Python脚本用于快速脚本)但我似乎要记住,这是一个比这个人使用的更具表现力的语言.

我正在寻找真正的Perl编码器的输入,以及如何改进它的建议(以及为什么Perl编码器应该知道改进方法).

你也可以抒情地说,是否应该(或不应该雇用)以完全不同的语言写一种语言的人.我对你的论点很感兴趣,但这个问题主要是对代码的批评.

规范是按如下方式成功处理CSV文件并输出各个字段:

User ID,Name , Level,Numeric ID
pax, Pax Morgan ,admin,0
gt,"  Turner, George" rubbish,user,1
ms,"Mark \"X-Men\" Spencer","guest user",2
ab,, "user","3"
Run Code Online (Sandbox Code Playgroud)

输出是这样的(潜在的雇佣代码实际输出这个):

User ID,Name , Level,Numeric ID:
   [User ID]
   [Name]
   [Level]
   [Numeric ID]
pax, Pax Morgan ,admin,0:
   [pax]
   [Pax Morgan]
   [admin]
   [0]
gt,"  Turner, George  " rubbish,user,1:
   [gt]
   [  Turner, George  ]
   [user]
   [1]
ms,"Mark \"X-Men\" Spencer","guest user",2:
   [ms]
   [Mark "X-Men" Spencer]
   [guest user]
   [2]
ab,, "user","3":
   [ab]
   []
   [user]
   [3]
Run Code Online (Sandbox Code Playgroud)

这是他们提交的代码:

#!/usr/bin/perl

# …
Run Code Online (Sandbox Code Playgroud)

perl

56
推荐指数
15
解决办法
6023
查看次数

什么是IDL?

IDL是什么意思?我用谷歌搜索了它,发现它代表接口定义语言,它用于组件的接口定义.但是,在实践中,IDL的目的是什么?微软是否使用它?

idl

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

将一个结构复制到另一个结构

我知道我可以按成员复制结构成员,而不是我可以在结构上进行复制memcpy吗?

这样做是否明智?

在我的结构中,我有一个字符串也作为成员,我必须复制到具有相同成员的另一个结构.我怎么做?

c struct copy

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

如何返回按NULL和NOT NULL分组的记录?

我有一个有processed_timestamp列的表- 如果已经处理了一个记录,那么该字段包含它被处理的日期时间,否则它是null.

我想写一个返回两行的查询:

NULL        xx -- count of records with null timestamps
NOT NULL    yy -- count of records with non-null timestamps
Run Code Online (Sandbox Code Playgroud)

那可能吗?

更新:表格非常大,因此效率非常重要.我可以运行两个查询来分别计算每个总数,但是如果我可以避免它,我想避免两次击中表.

sql null group-by

52
推荐指数
6
解决办法
4万
查看次数

如何将主窗口置于WPF中心?

我有一个WPF应用程序,我需要知道如何以编程方式(而不是在XAML中)中心wain窗口.

我需要能够在启动时和响应某些用户事件时执行此操作.它必须动态计算,因为窗口大小本身是动态的.

最简单的方法是什么?在旧的Win32代码下,我会调用系统指标函数并完成所有工作.这仍然是它的完成方式,还是CenterWindowOnScreen()我现在可以调用的简单函数.

c# wpf window center

52
推荐指数
7
解决办法
7万
查看次数

"#define for if(false){} else for"的可能用途是什么?

在另一个问题中,我刚刚发现了C智慧的这颗小珍珠:

#define for if (false) {} else for
Run Code Online (Sandbox Code Playgroud)

这导致MSVC为一个非常有效的声明吐出"常量表达式"警告:

for (int i = 0; i <= 10; i++) {...}
Run Code Online (Sandbox Code Playgroud)

我理解为什么 MSVC抱怨,因为它扩展到:

if (false) {} else for (int i = 0; i <= 10; i++) {...}
Run Code Online (Sandbox Code Playgroud)

我只是不明白为什么开发人员会使用那个小片段.有人有想法吗?

c c-preprocessor

45
推荐指数
2
解决办法
7728
查看次数

如何右对齐WPF中的"帮助"菜单项?

我的XAML文件中有以下(简化的)部分:

<Menu Width="Auto" Height="20" Background="#FFA9D1F4" DockPanel.Dock="Top">
    <MenuItem Header="File">
        <MenuItem Header="Exit"/>
    </MenuItem>
    <MenuItem Header="Edit">
        <MenuItem Header="Cut"/>
    </MenuItem>
    <MenuItem Header="Help">
        <MenuItem Header="About"/>
    </MenuItem>
</Menu>
Run Code Online (Sandbox Code Playgroud)

它导致:

+-------------------------------------------+
| File Edit Help                            |
+-------------------------------------------+
|                                           |
Run Code Online (Sandbox Code Playgroud)

如果我想要Help右侧的菜单项,我需要做什么:

+-------------------------------------------+
| File Edit                            Help |
+-------------------------------------------+
|                                           |
Run Code Online (Sandbox Code Playgroud)

wpf xaml visual-studio-2008

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