不知道大家有没有这样的经历,我们平时在写代码时,总是想先实现功能,再慢慢修改,可是发现功能实现后,增减特性的过程中,想再优化代码就比较难了,要改要重构的地方太多了,导致后面越做越难。 在嵌入式系统开发中,传统的顺序执行架构往往难以 ...
在软件开发中,数据结构的选择对程序性能、逻辑清晰度以及问题解决效率起着至关重要的作用。其中,队列作为一种基础且实用的数据结构,遵循“先进先出”(First-In, First-Out, FIFO)原则,广泛应用于各种编程场景。本文将深入探讨C#语言中System.Collections ...
这里分享一个自己用纯C实现的环形缓冲区。 环形缓冲区有很多作用,比如嵌入式中的通信可以用环形缓冲区作为信道,一个线程往里放字节,一个线程取字节进行处理,只要保证取的速度大于读的速度,就可以保证通信顺畅进行,不丢一个字节。 简要介绍 ...
说明:如果访问 GitHub 比较慢的话,可以关注我的知乎账号(Python-Jack),上面的“从零开始学Python”专栏(对应本项目前 20 天的内容)比较适合初学者,其他的专栏如“数据思维和统计思维”、“基于Python的数据分析”、“说走就走的AI之旅”等也在持续更新中 ...
队列(Queue)数据结构是先进先出(FIFO,first-in, first-out)的线性表,先进入队列的元素,最先被移除。队列适用于移除顺序需与添加顺序保持一致的情况。 这篇文章将介绍队列的常用操作,使用多种方式实现队列,并分析其时间复杂度。 入队 enqueue:向队列 ...
关于无锁队列的实现,网上有很多文章,虽然本文可能和那些文章有所重复,但是我还是想以我自己的方式把这些文章中的重要的知识点串起来和大家讲一讲这个技术。下面开始正文。 关于CAS等原子操作 在开始说无锁队列之前,我们需要知道一个很重要的技术 ...
一些您可能无法访问的结果已被隐去。
显示无法访问的结果