小编Dun*_*nan的帖子

section属性中的"aw"标志是什么意思?

在以下代码行中(声明一个全局变量),

unsigned int __attribute__((section(".myVarSection,\"aw\",@nobits#"))) myVar;
Run Code Online (Sandbox Code Playgroud)

"aw"标志是什么意思?

我的理解是nobits标志会阻止变量初始化为零,但我很难找到关于"aw"标志的信息.

另外,@和#在nobits标志周围有什么意义?

linker attributes gcc

13
推荐指数
2
解决办法
7691
查看次数

如何在响应表中保持水平滚动条可见?

我有一个包含大量行的表,这导致引导程序"响应表",滚动条离开屏幕底部.要查看溢出到两侧的数据,您必须滚动到底部,移动滚动条,然后再次向上滚动.

看看这个小提琴,http://jsfiddle.net/Lq4uk/1/

这是HTML代码,

<div class="table-responsive">
<table class="table table-striped table-bordered">
<thead>
    <th>#</th>
    <th>Header 1</th>
    ... (bunch of headers)
</thead>
<tbody>
    <tr>
        <th>1</th>
        <th>Some long text to make this overflow</th>
        ... (bunch of cells)
    </tr>
    ... (lots more rows)
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)

如何使水平滚动条始终可见?

或者,以不同的方式看待它,如何使用屏幕上可用的最大空间量来确定表格的垂直尺寸?

html css twitter-bootstrap

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

How do I convert a C# byte array into structured data?

I am passing 64 byte data packets over USB to a microcontroller. In the microcontroller C code the packets have the structure,

typedef union
{
    unsigned char data[CMD_SIZE];
    cmd_get_t get;
    // plus more union options
} cmd_t;
Run Code Online (Sandbox Code Playgroud)

with

typedef struct
{
    unsigned char cmd;          //!< Command ID
    unsigned char id;           //!< Packet ID
    unsigned char get_id;       //!< Get identifier
    unsigned char rfu[3];       //!< Reserved for future use
    union
    {
        unsigned char data[58];     //!< Generic data
        cmd_get_adc_t adc;          //!< ADC data …
Run Code Online (Sandbox Code Playgroud)

c# struct

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

如何以线程安全的方式将控制台程序的输出重定向到文本框?

我无法将控制台输出重定向到Windows窗体文本框.问题与线程有关.我正在以下列方式运行控制台应用程序,

private void RunConsoleApp()
{
    Process proc = new Process();
    proc.StartInfo.FileName = "app.exe";
    proc.StartInfo.Arguments = "-a -b -c";
    proc.StartInfo.UseShellExecute = false;

    // set up output redirection
    proc.StartInfo.RedirectStandardOutput = true;
    proc.StartInfo.RedirectStandardError = true;    
    proc.EnableRaisingEvents = true;
    proc.StartInfo.CreateNoWindow = true;

    // Set the data received handlers
    proc.ErrorDataReceived += proc_DataReceived;
    proc.OutputDataReceived += proc_DataReceived;

    proc.Start();
    proc.BeginErrorReadLine();
    proc.BeginOutputReadLine();
    proc.WaitForExit();

    if (proc.ExitCode == 0)
    {
        out_txtbx.AppendText("Success." + Environment.NewLine);
    }
    else
    {
        out_txtbx.AppendText("Failed." + Environment.NewLine);
    }
}
Run Code Online (Sandbox Code Playgroud)

然后使用此输出处理程序捕获和处理数据,

// Handle the date received by the console process …
Run Code Online (Sandbox Code Playgroud)

c# multithreading textbox console-application winforms

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

是否可以恢复"git rm -r -f <directory>"命令?

我正在设置我的第一个git存储库并执行以下操作,

git init
Run Code Online (Sandbox Code Playgroud)

按照一些git-config的东西来设置远程服务器.然后我做了

git add directory
git status
Run Code Online (Sandbox Code Playgroud)

哎呀,我添加了一些我不想要的文件.好的,所以我应该gm rm从提交列表中删除目录并重新开始

git rm directory
Run Code Online (Sandbox Code Playgroud)

此时我应该正确阅读控制台消息和文档....但没有.所以我跑了

git rm directory -r -f
Run Code Online (Sandbox Code Playgroud)

咦?我的目录在哪里?啊,好吧,git删除了它,所以它"不在那里"了.所以试试吧,

git status
git reset --hard
Run Code Online (Sandbox Code Playgroud)

在没有成功,一些错误消息和一堆网络搜索后,我意识到我的失礼.我应该用过

git rm -r --cached directory
Run Code Online (Sandbox Code Playgroud)

它会从提交列表中删除它,但不会从我的文件系统中删除它.哎呦.幸运的是没有什么严重丢失

似乎应该有一种方法可以从中恢复,但我的大多数搜索最终都指向"--cached"选项...而且这有点晚了.没有提交,所以我不能只恢复/拉取文件(只有本地副本).

是否可以取回这些文件?

git git-rm

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

如何查询IoT设备的总活跃时间?

我是 SQL 和 AWS Timestream 的新手,我想编写一个查询来获取设备处于活动状态的总时间。然后我想根据设备的千瓦时额定值将其转换为能源使用量。

数据点的时间间隔不是固定的。数据看起来像这样:

时间戳(秒) 活动(布尔值)
1617697080 (10点18分) 错误的
1617697920 (10点32分) 真的
1617698280 (10点38分) false(活跃 6 分钟)
1617699000 (10点50分) 真的
1617699120 (10点52分) false(活跃 2 分钟)
ETC。

上面的总活跃时间是8分钟。

我想提出的查询类型是这样的,

  • 上个月(或其他时期)的总活跃时间(能源使用量)
  • 上个月每天的总活跃时间(能源使用量)

什么样的查询会给我这个信息并且能够容忍可变的间隔?

我正在考虑但还没有完全弄清楚两条路,

  1. 对数据进行插值并填充值,以获得具有一致间隔的新时间流(然后就像计算值一样简单),或者
  2. 使用某些日期/时间函数查看数据点之间的时间戳并添加其活动的总时间。

我一直在尝试获取正确的查询来插入数据,但尚未成功。我正在遵循 AWS Timestream SQL 文档中的模式,但还不太理解它。

我什至不知道从哪里开始或在哪里寻找求和时间戳差异的示例。逻辑过程会是这样的,

if (this_point == true) then
    total_active_time += next_point_timestamp - this_point_timestamp
Run Code Online (Sandbox Code Playgroud)

可能的解决方案#1:插值

插值在一定范围内效果很好,尽管对于解决方案来说感觉有点矫枉过正。设备的开/关分辨率为 10 秒,因此如果插值采样时间太大,数据就会开始出现偏差。当插值时间序列超过 10k 点时,这会出现问题 - AWS Timestream 会抛出错误“序列函数的结果不得超过 10000 个条目”。因此,在短时间内,这是可行的,但如果我想计算出一个月内的能源使用情况,那么它永远不会成功(至少在 10 秒分辨率下不行)。使用 1m 分辨率可以提供足够好的精度来处理超过 6 天的时间。可以在不同的日期范围内多次使用此查询来获取数据。

WITH active_timeseries AS (
SELECT time, COUNT_IF(measure_value::boolean) AS Active …
Run Code Online (Sandbox Code Playgroud)

aws-iot amazon-timestream

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