首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏布衣者博客

    LeetCode-题库-刷题(6-7)

    将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 具体题目链接

    45720发布于 2021-09-07
  • 来自专栏python3

    笨办法学Python - 习题6-7:

    学习目标:了解字符串的定义,学会使用复杂的字符串来建立一系列的变量。学会命名有意义的变量名

    72510发布于 2020-02-10
  • 来自专栏iOS面试

    iOS 面试策略之算法基础6-7

    之前介绍了最简单的搜索法:二分搜索。虽然它的算法复杂度非常低只有 O(logn),但使用起来也有局限:只有在输入是排序的情况下才能使用。这次讲解两个更复杂的搜索算法:

    90630发布于 2021-04-22
  • 来自专栏AI SPPECH

    IO竞赛2025年题目解析:中级难度(6-7

    2025年的中级难度(难度系数6-7)题目综合考察了选手的算法设计、数据结构应用、数学建模和问题分析能力。本文将深入解析2025年中级难度的IO竞赛题目,帮助选手们突破瓶颈,提升解题能力。 难度进阶路径: 入门(1-3) → 基础(4-5) → 中级(6-7) → 高级(8-10) 难度系数 考察重点 核心知识点 学习目标 6-7 高级算法、数据结构综合应用 高级动态规划、图论、数论、几何 8题) ├── 第四章:中级难度题目解题策略 └── 第五章:综合能力提升建议 第一章:2025年IO竞赛中级难度题目概述 根据2025年NOI修订版大纲,中级难度(CSP-S提高)的知识点难度系数为6-

    30010编辑于 2025-11-13
  • 来自专栏AI机器学习与深度学习算法

    机器学习入门 6-7 sklearn中的随机梯度下降法

    本系列是《玩转机器学习教程》一个整理的视频笔记。本小节主要介绍改进上一小节代码,封装自己的随机梯度下降法并应用,之后应用sklearn实现随机梯度下降法。

    1.2K20发布于 2019-11-13
  • 来自专栏linjinhe的专栏

    设计数据密集型应用(6-7):分片、事务

    隔离性(Isolation):多个事务并发、交叉执行可能会相互影响。隔离性描述的是多个事务并发执行的表现。 事务并发的异常现象 不同的隔离级别在事务并发执行时可能出现不同的异常现象。 脏写(Dirty Write) 脏写是最低级别的异常现象,相当于事务执行的时候没有任何保护。 如果这条记录被并发事务修改,但是未提交就被读出来,此时的不可重复读属于脏读。 如果这条记录被并发事务修改,并且已提交,此时的不可重复读属于读提交(Read Committed)。 丢失更新(Lost Update) Lost update 其实是因为没做好写写冲突的保护,导致两个并发事务其中一个的更新“丢失”了。 修改 V2),最后并发提交事务。

    78450发布于 2020-04-02
  • 来自专栏全栈开发那些事

    6-7 在一个数组中实现两个堆栈 (20分)

    其中Tag是堆栈编号,取1或2;MaxSize堆栈数组的规模;Stack结构定义如下:

    1.2K40编辑于 2023-02-27
  • 来自专栏cloudskyme

    并发,又是并发

    对比串联执行和并发执行 ``` java? : 循环次数 并发执行时间 串联执行时间 一百万 2ms 4ms 十万 2ms 2ms 一万 1ms 0ms 通过数据的对比我们可以看出。 在一万以下的循环次数时,串联的执行速度比并发的执行速度块。是因为线程上下文切换导致额外的开销。 死锁与活锁的区别,死锁与饥饿的区别? 这种划分是使用并发度获得的,它是 ConcurrentHashMap 类构造函数的一个可选参数,默认值为 16,这样在多线程情况下就能避免争用。 同时加入了更多的辅助变量来提高并发度,具体内容还是查看源码吧。 volatile 变量和 atomic 变量有什么不同?

    1.6K41发布于 2020-06-15
  • 来自专栏look Java

    😀 Java并发 - (并发基础)

    Java并发 - (并发基础) 1、什么是共享资源 堆是被所有线程共享的一块内存区域。在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例 Java中几乎所有的对象实例都在这里分配内存。 如下图: 2、并发编程的难点 原子性问题 操作系统做任务切换(CPU切换),可以发生在任何一条CPU指令执行完成后; CPU能保证的原子操作是指令级别的,而不是高级语言的操作符(例如:n++)。 为了提高性能,编译器和处理器常常会对指令做重排序; 重排序不会影响单线程的执行结果,但是在并发情况下,可能会出现诡异的BUG。 参考地址:https://zhuanlan.zhihu.com/p/298448987 3、JMM 并发编程的关键目标 并发编程需要处理两个关键问题,即线程之间如何通信和同步。 并发编程的内存模型 共有两种并发编程模型:共享内存模型、消息传递模型,Java采用的是前者。

    59510编辑于 2023-12-07
  • 来自专栏ReganYue's Blog

    Go并发之CSP并发模型、协程并发

    Go并发之CSP并发模型、协程并发 什么是CSP并发模型 CSP 即通信顺序进程、交谈循序程序,又被译为交换消息的循序程序(communicating sequential processes),它是一种用来描述并发性系统之间进行交互的模型 但是容易出现死锁的情况,且未给予直接的并行支持,并行需要建立在并发的基础之上。 在CSP模型里面,进程间需要经过一种被称为管道来进行通信。 通过管道能够实现百万级的并发。如果说线程是抢占式的,那么协程是协作式的。在协程里面,也是通过管道来调度的。 解放线程对CPU和内存的开销,线程是先占用CPU和内存后才调度,而协程是通过通信发送信号来调度,协程全是通过管道,由于协程的消耗比线程小很多,所以能够实现百万并发。 8G内存的电脑,用JAVA,C来做并发,差不多也就千级并发,而用GO语言,通过管道可以让并发能力得到很大提升。

    1.2K10发布于 2021-09-16
  • 来自专栏ImportSource

    并发编程-并发的简史

    1.1.A(Very)Brief History of Concurrency 并发的简史 在很久以前,计算机没有操作系统;他们只执行一个程序,从头到尾的执行,并且这个程序直接访问机器的所有资源。 线程还提供了一个自然的分解模式,这种模式可以充分的利用多处理器系统中的硬件的并发性。 在同一个program中的多个线程可以被并行的调度到多个cpu上。

    1.2K70发布于 2018-04-03
  • 来自专栏蛋蛋编程手记

    并发map并发设计演进

    concurrentHashMap的底层指导思想之前有提过,就是通过细化锁的粒度来优化并发情况下的锁冲突从而实现高性能的。这种思想在很多设计中都能看到,比如Innodb的行级锁概念。 jdk1.8之前,并发map通过引入segment来细化锁的粒度,就是把原本的数组分到多个不同的段里,每个段单独管理自己的数组,段与段之间不冲突,即使数组扩容也是段内部的数组扩容。 segment长度默认是16,可以构造时指定,后面不会变化,所以并发度主要还是看segment的个数了。 数据越多并发冲突的概率越大 jdk1.8废弃了segment的概念,锁粒度更加的细化,直接给数组的链首或树根元素加锁。只要没有hash冲突就没有并发冲突。数据多了,数组会扩容,并发冲突的概率并没有变大

    53920编辑于 2022-07-27
  • 来自专栏全栈程序员必看

    Jmeter并发测试_并发测试

    jmeter并发测试报错 请大神给指点一下是因为什么报错,并发循环1-5次的时候不会报错,循环多次就开始报错了。 版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。

    1.7K30编辑于 2022-11-11
  • 来自专栏数据云团

    并发篇-python并发通信

    使用多线程实现并发服务器与使用多进程实现并发服务器 ? python支持的并发分为多线程并发和多进程并发还有异步IO。 多进程并发即运行多个独立的程序,优势在于并发处理的任务都由操作系统管理,不足之处在于程序与各进程之间的通信和数据共享不方便; 多线程并发则由程序员管理并发处理的任务,这种并发方式可以方便地在线程间共享数据 对于计算密集型程序,多进程并发优于多线程并发。 对于多进程并发,python支持两种实现方式 一种是采用进程安全的数据结构:multiprocessing.JoinableQueue,这种数据结构自己管理“加锁”的过程,程序员无需担心“死锁”的问题;

    1.3K10发布于 2019-07-18
  • 来自专栏产品优化

    Java 并发编程·Java 并发

    Java 并发 线程状态转换 新建(New) 创建后尚未启动。 可运行(Runnable) 可能正在运行,也可能正在等待 CPU 时间片。 它是 JUC 并发包中的核心基础组件。 CountDownLatch 用来控制一个或者多个线程等待多个线程。 以下代码模拟了对某个服务的并发请求,每次只能有 3 个客户端同时访问,请求总数为 10。 在 Java 内存模型中,允许编译器和处理器对指令进行重排序,重排序过程不会影响到单线程程序的执行,却会影响到多线程并发执行的正确性。 互斥同步属于一种悲观的并发策略,总是认为只要不去做正确的同步措施,那就肯定会出现问题。

    3.4K32编辑于 2022-12-01
  • 来自专栏别先生

    Java并发编程与高并发之线程并发容器

    可以使用此程序进行并发测试。 34 // 线程池调度的时候加上并发控制。给定一个值代表运行的并发数目。 35 // 3代表并发的数目,控制台打印一次执行三次。 34 // 线程池调度的时候加上并发控制。给定一个值代表运行的并发数目。 35 // 3代表并发的数目,一次获取3个许可,控制台每次打印1个。 35 // 线程池调度的时候加上并发控制。给定一个值代表运行的并发数目。 36 // 3代表并发的数目,一次获取3个许可,控制台每次打印1个。 36 // 线程池调度的时候加上并发控制。给定一个值代表运行的并发数目。 37 // 3代表并发的数目,一次获取3个许可,控制台每次打印1个。

    1.9K20发布于 2020-02-18
  • 来自专栏golang分享

    并发

    C.一个进程可以创建和撤销多个线程;同一个进程中的多个线程之间可以并发执行。并发和并行A. 多线程程序在一个核的cpu上运行,就是并发。B. 多线程程序在多个核的cpu上运行,就是并行。 并发是指逻辑上具备同时处理多个任务的能力;并行则是物理上同时执行多个任务。协程和线程协程:独立的栈空间,共享堆空间,调度由用户自己控制,本质上有点类似于用户级线程,这些用户级线程的调度也是自己实现的。 的栈内存占用和由于实现机制而大幅减少的创建和销毁开销是go高并发的根本原因。并发主要由切换时间片来实现"同时"运行,并行则是直接利用多核实现多线程的运行,go可以设置使用核数,以发挥多核计算机的能力。 单点Server的N种并发模型汇总协程与线程主要区别是它将不再被内核调度,而是交给了程序自己而线程是将自己交给内核调度,所以也不难理解golang中调度器的存在。 Go 调度器牢牢地锁定了协程的控制权,即便协程发生阻塞,调度器也能够快速切换到其他协程运行,在高并发网络 I/O 密集的环境下保证了程序的高性能。

    5K11编辑于 2023-11-30
  • 来自专栏数据云团

    并发篇-python并发通信-2

    死锁是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。

    91920发布于 2019-07-18
  • 来自专栏全栈程序员必看

    Jmeter并发测试_高并发测试

    进入后语言是英文的可以选择Options—Choose Language—Chinese(Simplified) 选择左侧TestPlan—添加—线程(用户)—线程组 线程组介绍: 线程数,即为并发请求数量 为0表示并发执行 ramp-Up时间,即为几秒内开启全部线程,可修改 循环次数为1表示所有线程只执行一次。

    2.9K30编辑于 2022-11-19
  • 来自专栏小工匠聊架构

    并发编程-01并发初窥

    文章目录 引言 思维导图 基础知识构建 涉及的知识点一览 高并发处理思路与手段一览 并发初窥 概念 并发问题模拟 代码 ? 引言 说来惭愧,一直没有系统的梳理过并发编程的知识,这次借着学习_Jimin_老师的《Java并发编程与高并发解决方案》课程的机会,结合以往工作中的使用,好好的梳理下并发编程与高并发的知识,形成一个较为完善的并发编程知识体系 ---- 高并发处理思路与手段一览 ? ---- 并发初窥 概念 并发: 同时拥有两个或者多个线程,如果程序在单核处理器上运行多个线程将交替地换入或者换出内存,这些线程是 同时“存在”的,每个线程都处于执行过程中的某个状态,如果运行在多核处理器上 高并发:服务能同时处理很多请求,提高程序性能 ---- 并发问题模拟 首先说明如下代码是存在并发问题的,这里是为了抛出问题,后续给出解决办法.

    60020发布于 2021-08-17
领券