小编Jon*_*Jon的帖子

如何检测USB断开事件?(Windows,.NET C#应用程序)

目前我这样做是为了查看一个掩盖的USB设备列表(专门为我正在使用的设备屏蔽),如果它在那里,我继续,如果没有,那么我通知用户设备没有连接.通过USB外围控制器芯片制造商的.NET库为我提供了获取USB设备列表的方法.

是否存在USB设备断开连接的事件?

.net usb events disconnect

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

如何加快逐行读取ASCII文件的速度?(C++)

这里有一些代码,在做了一些测量之后是一个相当大的瓶颈:

//-----------------------------------------------------------------------------
//  Construct dictionary hash set from dictionary file
//-----------------------------------------------------------------------------
void constructDictionary(unordered_set<string> &dict)
{
    ifstream wordListFile;
    wordListFile.open("dictionary.txt");

    std::string word;
    while( wordListFile >> word )
    {
        if( !word.empty() )
        {
            dict.insert(word);
        }
    }

    wordListFile.close();
}
Run Code Online (Sandbox Code Playgroud)

我正在读大约200,000字,这在我的机器上大约需要240毫秒.ifstream这里使用效率高吗?我可以做得更好吗?我正在阅读有关mmap()实现的内容,但我并不是100%理解它们.输入文件只是带有*nix行终止的文本字符串.

编辑:建议替代方案的后续问题:任何替代方案(减去增加流缓冲区大小)是否意味着我编写了一个解析每个字符的解析器?我有点像流的简单语法,但如果我需要速度,我可以重新写一些更细节的东西.将整个文件读入内存是一个可行的选择,它只有2mb左右.

编辑#2: 我发现对我的减速是由于设置插入,但对于那些仍然有兴趣加快逐行文件IO的人,请在这里阅读答案并查看Matthieu M.的关于这个主题的继续.

c++ optimization file-io ifstream

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

自然语言解析器,用于解析体育逐个播放数据

我正在尝试为足球比赛提供解析器.我非常宽松地使用"自然语言"一词,所以请耐心等待,因为我对这个领域几乎一无所知.

以下是我正在使用的一些示例(格式:TIME | DOWN&DIST | OFF_TEAM | DESCRIPTION):

04:39|4th and 20@NYJ46|Dal|Mat McBriar punts for 32 yards to NYJ14. Jeremy Kerley - no return. FUMBLE, recovered by NYJ.|
04:31|1st and 10@NYJ16|NYJ|Shonn Greene rush up the middle for 5 yards to the NYJ21. Tackled by Keith Brooking.|
03:53|2nd and 5@NYJ21|NYJ|Mark Sanchez rush to the right for 3 yards to the NYJ24. Tackled by Anthony Spencer. FUMBLE, recovered by NYJ (Matthew Mulligan).|
03:20|1st and 10@NYJ33|NYJ|Shonn Greene rush to the left for 4 yards …
Run Code Online (Sandbox Code Playgroud)

python parsing nlp

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

Windows Bash和Visual Studio代码:如何将bash作为运行任务启动?

如何从Visual Studio代码运行Windows Bash作为运行任务?

以下是我尝试tasks.json这样做的一些尝试.

{
    "version": "0.1.0",
    "command": "cmd",
    "isShellCommand": true,
    "args": [ "RunShellScript.bat" ],
    "showOutput": "always"
}
Run Code Online (Sandbox Code Playgroud)

RunShellScript.bat只有这一行:bash myShellScript.sh.如果您只是从开始打开cmd,并键入该行,它将执行.如果您只是双击该文件,它也可以完美运行.但是,从VSCode启动时,此输出只会挂起,直到我终止它.

尝试2号:

{
    "version": "0.1.0",
    "command": "cmd",
    "isShellCommand": true,
    "args": [ "bash myShellScript.sh" ],
    "showOutput": "always"
}
Run Code Online (Sandbox Code Playgroud)

这也像上面一样挂起.

尝试3号:

{
    "version": "0.1.0",
    "command": "C:/Windows/System32/bash",
    "isShellCommand": false,
    "args": [ "myShellScript.sh" ],
    "showOutput": "always"
}
Run Code Online (Sandbox Code Playgroud)

这给了我:

Failed to launch external program C:/Windows/System32/bash myShellScript.sh
spawn C:/Windows/System32/bash ENOENT
Run Code Online (Sandbox Code Playgroud)

我也尝试过"isShellCommand"在某些情况下将变量设置为true和false,但无济于事.

有谁知道如何做到这一点?

windows bash visual-studio-code windows-subsystem-for-linux

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

如何确定给定磁盘的SATA通道?

使用DISKPART命令行实用程序,我可以得到一个称为"位置路径"的东西,它似乎能够提供我需要的东西,您可以detail disk在选择其中一个磁盘后使用该命令查看diskpart.

看来我可以通过这个类以编程方式获取此信息:MSFT_Disk

我不确定如何获得这个类的实例.我有几个使用ManagementObjectSearcherfor WMI类的例子但是这个方法对我不起作用,我也不确定MSFT_DiskWindows 7中的可用性,因为该页面提到这是针对Windows 8的.

有谁知道获得SATA通道信息或磁盘"位置路径"的好方法?

.net c# disk sata hard-drive

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

如何编写使用Intel IPT硬件的应用程序?

为英特尔IPT硬件编写某种抽象层涉及什么?

对于那些不熟悉英特尔IPT的人来说,它是一个嵌入式协处理器,用于从秘密种子开始,每隔30秒生成一个唯一的6个字符的一次性密码.

有关实际使用的示例,请查看Valve的SteamGuard,它允许用户使用他们的Steam帐户注册PC,这样他们的PC现在可以作为第二个身份验证因素,就像RSA安全令牌一样,但内置在您的计算机中.另一个客户端是赛门铁克的VIP,就我所知,它是你的IPT硬件和寻求额外身份验证的网站之间的中间人(你现在可以在ebay上使用它 - 可能还有其他例子) .

到目前为止,我对技术文档的搜索没有任何用处,我发现更多的是营销导向,对实现者没有用.您是否必须成为英特尔的"值得信赖的合作伙伴"(赛门铁克被列为一个)才能获得必要的资源?是否涉及审计程序?

hardware security cryptography intel two-factor-authentication

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

什么更贵?上下文切换或函数调用?

在裸机系统(嵌入式微控制器,没有MMU,没有寻呼)什么更昂贵?完整的上下文切换(寄存器保存和恢复)或函数调用(激活记录分配)?

我知道这很大程度上取决于调用约定和硬件功能,但我将如何评估它呢?

编辑:

为了提供更多的上下文,我试图模拟两个调度方案.第一个是先发制人的调度程序,在任务之间切换上下文.第二个是函数指针运行队列,其中任务是状态机,分为几个可以进行的函数调用(其中,在IO事件驱动的基础上进行排队).

在大多数情况下,我可以收集关于我的任务需要多长时间(IO和CPU时间)的良好数据,但我需要一些帮助来计算在我的模型中添加常量的额外开销成本.

architecture operating-system function overhead context-switch

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

交叉编译的Python无法找到基本模块(数学,运算符等)

我似乎无法导入位于"lib-dynload"目录中的任何基本模块.他们都在那里,但我得到错误:"ImportError: No module named X"尝试导入它们时.

我检查了我的sys.path,它包含所有这些模块所在的目录,并且我的PYTHONHOME环境变量设置正确.关于问题可能是什么,我有点不知所措.一些背景信息:这是从Python 2.6.6源代​​码交叉编译并安装到带有Angstrom的ARM嵌入式Linux板上.

它之前确实有python,我曾试图将它咬成图像,但它缺少很多东西.在加载到我的交叉编译版本之前,我最终尽力清理与之前的python有关的任何目录树.

一个简单的脚本,只是试图导入math:http: //pastebin.com/3XgJ3nPR

python linux embedded cross-compiling

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

如何以编程方式判断 Mac OS X 计算机是否绑定到 Active Directory 域?

此命令:dsconfigad -show执行我需要的操作,但我需要管理员权限才能运行它。

上面的命令输出了一些我感兴趣的信息:

You are bound to Active Directory:
      Active Directory Forest        = xx.xxxxxx.local
      Active Directory Domain        = xx.xxxxxx.local
      Computer Account               = (computer name)
Run Code Online (Sandbox Code Playgroud)

我希望能够以Active Directory Domain编程方式看到上面的内容,并且最好不需要具有 sudo 权限。

有什么建议?我已经浏览了 Open Directory 文档,但对我来说如何做到这一点并不完全显而易见。我还尝试了一些代码示例,只是为了查询 AD 中的某些内容而没有成功……我将继续努力,但我希望这里有人有一些知识可以分享。

macos active-directory

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

从Visual Studio 2015开始基于WSL bash的构建

我最近开始使用Windows子系统Linux(WSL)来查看我的Linux Makefile和基于arm-none-eabi-gcc的微控制器项目是否会在Windows中"本地"构建.令我惊讶的是,工具链和基于Linux的开发工具首先安装并完美运行,无需对Makefile进行任何修改.

这让我想到尝试使用IDE功能在Visual Studio中进行所有代码编辑,同时在WSL中提供的Linux和bash环境中进行实际构建.

不幸的是,在我的Visual Studio项目的NMake选项中指定"构建命令行"时,放入"C:\Windows\System32\bash.exe build.sh"不起作用,因为:

'C:\Windows\System32\bash.exe' is not recognized as an internal or external command, operable program or batch file.

这对我来说很奇怪,因为我指定了完整路径并且找不到WSL bash可执行文件,并且还尝试将其添加为"外部工具"似乎不起作用,因为可执行文件未显示在选择窗口,尽管能够在同一目录中看到其他可执行文件.

一些非主题观点:如果Microsoft可以使Visual Studio和WSL无缝协同工作,那么我可能会从我的Ubuntu虚拟机设置切换到基于WSL的开发环境.

msbuild bash visual-studio windows-subsystem-for-linux

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