JUC并发编程 - 1. 概览


JUC并发编程 - 1. 概览

1. 概览

1.1 这门课讲什么

这门课中的「并发」涵盖了Java平台上的:

  • 进程:程序的执行实例,拥有独立的内存空间。

  • 线程:进程内独立执行的最小单位,多个线程共享同一个进程的内存。

  • 并发:多个任务交替执行,利用单核CPU切换上下文实现“同时执行”的效果。

  • 并行:多个任务真正同时执行,通常基于多核CPU。

此外,这门课还包括:

  • Java的并发工具类常见并发问题解决方案

  • 其他领域的并发知识拓展,比如操作系统层面的并发机制数据库事务并发控制

1.2 为什么要学这门课?

我工作中用不到并发啊?

这是很多开发者的第一反应。其实:

  • Web开发:高并发场景随处可见,如Servlet容器中一个请求就是一个线程。

  • 数据库访问:连接池、事务、锁机制都涉及并发控制。

  • 分布式系统:网络通信、异步任务、消息队列都绕不开并发。

  • 移动/桌面应用:响应式UI、后台任务、线程池。

即便你暂时用不到,理解并发能让你写出更高质量的代码,并在遇到复杂问题时游刃有余

1.3 课程特色

本门课程以并发/并行为主线,贯穿三大要素:

  • 应用:从实际工作中总结问题场景。

  • 原理:底层机制详解,帮助你理解“为什么”。

  • 模式:传授大厂的“正确姿势”。

强调两点:

  • 理论与实战结合,力求让你“会用 + 懂原理”。

  • 所有代码遵循良好的编码规范,比如给线程取有意义的名字。

1.4 预备知识

建议你具备以下基础:

  • 非Java入门者:至少有Web开发或多线程开发经验。

  • 线程安全意识:接触过Java Web、JDBC开发、Web服务器、分布式框架者更佳。

  • JDK 8 基础:理解lambda表达式函数式编程概念。

  • 日志/依赖管理

    • 使用slf4j + logback管理日志;

    • 使用lombok简化Bean代码。

环境依赖

pom.xml:

<properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.10</version>
    </dependency>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.3</version>
    </dependency>
</dependencies>

logback.xml:

<?xml version="1.0" encoding="UTF-8"?>
<configuration
    xmlns="http://ch.qos.logback/xml/ns/logback"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://ch.qos.logback/xml/ns/logback logback.xsd">

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%date{HH:mm:ss} [%t] %logger - %m%n</pattern>
        </encoder>
    </appender>

    <logger name="c" level="debug" additivity="false">
        <appender-ref ref="STDOUT"/>
    </logger>

    <root level="ERROR">
        <appender-ref ref="STDOUT"/>
    </root>
</configuration>

2. 进程与线程(预告)

本章内容预览:

  • 进程 vs 线程:核心概念对比。

  • 并行 vs 并发:常见误区澄清。

  • 线程的基本用法:创建、启动、终止等。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夏驰和徐策

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值