2011 0907学习总结

数据服务:数据服务框架Magic-API 介绍及实践 接口快速开发框架 基于Java的接口快速开发框架,编写接口将通过magic-api提供的UI界面完成,自动映射为HTTP接口,无需定义Controller、Service、Dao、Mapper、XML、VO等Java对象即可完成常见的HTTP API接口开发 。在线页面快速开发平台 基于 vue 的在线页面快速开发平台,主要把所有的 vue 代码都改为在线配置,最终获得一个 json 格式的页面新一代爬虫平台 基于Java实现的新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。今天给大家安利一 阅读详情

2011 09 07 学习总结

今天上课的时候主要学习的是java的线程调度,说到底最关键的还是2个方法 wait和notify这两个方法是非常关键的,在进行线程调度的时候由于书本上和老师总结的都不十分完全,所以我现在必须要把问题说清楚,明明白白的说清楚,就我今天晚上帮同学解决问题的经验一起写下来。

首先是某个类中必须要有 sychronized方法,这个方法带了锁之后才能被同步,或者说才可以在被多线程调用的情况下表现出符合逻辑的效果。

当线程并发的时候,线程队列对sychronized方法的访问是互斥的,就是说只能同时有以个线程获得该方法的锁,但是这个类中的其他的普通方法,线程队列是随时都可以调用的。而且当一个线程获得该对象的锁之后,队列的其他线程对该类中的其他同步线程也将被同时阻塞。

这是个很复杂的问题,至于线程什么时候阻塞什么时候可以配合wait和notify进行调度,都是要基于上面的条件的。其实解释出来也是很简单的。

 

具体的情景类似下面的模式:

一个object就像一个大房子,大门永远打开。房子里有 很多房间(也就是方法)。

这些房间有上锁的(synchronized方法),和不上锁之分(普通方法)。房门口放着一把钥匙(key),这把钥匙可以打开所有上锁的房间。

另外我把所有想调用该对象方法的线程比喻成想进入这房子某个 房间的人。所有的东西就这么多了,下面我们看看这些东西之间如何作用的。

在此我们先来明确一下我们的前提条件。该对象至少有一个synchronized方法,否则这个key还有啥意义。当然也就不会有我们的这个主题了。

一个人想进入某间上了锁的房间,他来到房子门口,看见钥匙在那儿(说明暂时还没有其他人要使用上锁的房间)。于是他走上去拿到了钥匙

,并且按照自己 的计划使用那些房间。注意一点,他每次使用完一次上锁的房间后会马上把钥匙还回去。即使他要连续使用两间上锁的房间,

中间他也要把钥匙还回去,再取回来。

因此,普通情况下钥匙的使用原则是:“随用随借,用完即还。”

这时其他人可以不受限制的使用那些不上锁的房间,一个人用一间可以,两个人用一间也可以,没限制。但是如果当某个人想要进入上锁的房

间,他就要跑到大门口去看看了。有钥匙当然拿了就走,没有的话,就只能等了。

要是很多人在等这把钥匙,等钥匙还回来以后,谁会优先得到钥匙?Notguaranteed。象前面例子里那个想连续使用两个上锁房间的家伙,他

中间还钥匙的时候如果还有其他人在等钥匙,那么没有任何保证这家伙能再次拿到。

 

这就是具体的模式,很简单也很好读懂,基本就是线程调度中面临的所有问题了。

除了这个,其实还有notify方法的使用不得当和对wait方法的使用不得当,其实最要紧的还是要时刻记住到底是谁阻塞之后会唤醒谁的关系,这样才可以正确调度复杂的方法。

 

超临界二氧化碳发电技术深度解析 超临界二氧化碳发电技术正在突破传统热电转换的物理边界。作为新一代发 阅读详情

相关推荐

机器学习预测土壤养分:从电导率、pH到随机森林与神经网络的农业实践

在智慧农业与精准农业领域,机器学习已成为处理复杂农业数据、挖掘潜在规律的关键技术。其核心原理在于通过算法从多维数据中自动学习特征与目标变量之间的映射关系,尤其擅长捕捉非线性关联。这项技术的核心价值在于能够将传统上依赖昂贵、耗时实验室分析的问题(如土壤养分检测),转化为基于易获取传感器数据(如电导率、pH值)的快速、低成本预测任务,为农业生产的实时决策与资源优化提供了全新可能。其典型应用场景包括作物生长监测、产量预测以及精准施肥管理等。本文聚焦于利用随机森林和神经网络等回归算法,构建通过土壤物理参数预测氮磷钾

weixin_33693070的博客 665

0907

<?xmlversion="1.0"encoding="UTF-8"standalone="yes"?> <rootversion="7"DefaultSaveDir=""DefaultSaveExtension="png"> <itemcontent="021-62297313雷允上润肺暖肾---中医调理&#xA;吊兰绿萝甲醛&...

weixin_30672295的博客 107

使用HFSS仿真分支波导耦合器

本文介绍了分支波导耦合器的HFSS仿真设计过程。首先给出了器件关键参数(t=0.365mm,l=1.600mm等),详细说明了建模步骤:包括创建中心分支、设置变量参数、镜像复制两侧分支、矩形波导端口设计等操作。重点阐述了激励端口设置方法,包括四个端口的积分线绘制,以及求解频率设定。最后展示了S参数、幅度平衡度和相位差等关键性能指标的仿真结果提取方法。整个设计过程体现了HFSS在微波器件仿真中的参数化建模和结果分析能力。

shao666888的博客 180

TB6612FNG 驱动学习笔记

TB6612FNG是东芝半导体公司生产的一款直流电机驱动器件,它具有大电流MOSFET-H桥结构,双通道电路输出,可同时驱动2个电机。 TB6612FNG每通道输出最高1.2 A的连续驱动电流,启动峰值电流达2A/3.2 A(连续脉冲/单脉冲);4种电机控制模式:正转/反转/制动/停止;PWM支持频率高达100 kHz;待机状态;片内低压检测电路与热停机保护电路;工作温度:-20~85℃;SSOP...

weixin_42407030的博客 6739

5G NR PDCCH实战解析:从DCI格式到CORESET配置的完整指南

本文深入解析5G NR PDCCH的实战配置,涵盖DCI格式选择、CORESET配置及Search Space优化等关键内容。基于3GPP R16标准,提供现网部署中的典型问题解决方案,如覆盖边缘失步、多用户调度冲突等,帮助提升控制信令传输效率。特别针对5G NR PDCCH的灵活资源分配和自适应编码机制进行详细探讨。

weixin_29231263的博客 498

激光SLAM算法性能对比:在Ubuntu20.04上实测Point-LIO/FAST_LIO2/Faster-LIO的运行效果

本文在Ubuntu 20.04平台上对Point-LIO、FAST-LIO2和Faster-LIO三款激光SLAM算法进行了深度实测与性能对比。通过量化分析绝对轨迹误差、CPU/内存占用及单帧处理延迟等核心指标,结合室内外场景数据,为高精度测绘、服务机器人及自动驾驶等不同应用场景提供了清晰的选型指南和实战调优建议。

weixin_28335283的博客 368

显著性论文学习阶段总结(二)

http://www.cnblogs.com/yingying0907/archive/2013/03/25/2980394.html  1.Ali Borji, Laurent Itti, Exploiting Local and Global Patch Rarities for Saliency Detection, CVPR2012 1) 系统框架:   2) 

wu_wenhuan的专栏 908

我用两种方式玩转 MCP:CherryStudio vs VS Code 实测手记

MCP,全称,你可以理解为——给大模型装上“手脚”和“工具箱”。传统大模型像一位博学但手不能动的学者:“我知道怎么算圆周率,但没法打开计算器。而支持 MCP 的模型,能通过标准协议自动调用外部工具(比如fetch网络请求、readFile读文件、shell执行命令),真正做到“知行合一”。输入后**,保存,**之后就显示出来了MCP 不是“魔法”,而是把 AI 从“问答机”升级为“智能代理”的关键一步。工具本身不难,难的是“知道它能解决什么问题”。

zyq569的博客 1021

博客专栏 >OpenCV学习笔记

共55篇博文 博客专栏  >  编程语言   >  OpenCV学习笔记 OpenCV学习笔记(十六)——CamShift研究 CamShitf算法,即Continuously Apative Mean-Shift算法,基本思想就是对视频图像的多帧进行MeanShift运算,将上一帧结果作为下一帧的初始值,迭代下去。基本步骤为... 2011-10-31 20:57 1019

autumn20080101的专栏 324

深入解析:如何在Visual Studio中高效编译libredwg与libdxfrw

本文详细介绍了在Visual Studio中高效编译libredwg与libdxfrw的完整流程,包括环境配置、源码获取、CMake技巧及常见错误解决方案。针对CAD开发者,提供了从基础编译到项目集成的实用指南,帮助快速处理DWG/DXF文件,提升开发效率。

weixin_29215391的博客 232

嵌入式环境下XML配置文件解析实践

在资源受限的嵌入式环境中,如何轻量级地解析XML配置文件成为关键。通过简化语法结构与优化内存使用,实现快速读取和解析配置文件,提升系统启动效率与稳定性。

weixin_31869917的博客 400

“实习”结束,十月找工作中

“实习”结束,十月找工作中 吾于8月24日已从上海离职。理由?曰:心未定,致使各处奔波。其次,一直在找自己的定位与方向。所以,先休整一段时间再说。 盲目工作了两个月(权且把这两个月当做“实习”),这两天及本周周末先在上海好好思考一些问题,然后下周周一(8月29日)去杭州,下周周三或周四去...

dinongxu8804的博客 141

车载以太网测试-1【TC8物理层测试基础】

车载以太网物理层是车载网络的基础,负责将数字数据转换为适合在物理介质上传输的信号,并确保数据传输的可靠性、稳定性和高效性。它在车载网络系统中扮演着至关重要的角色,直接影响着车辆内部通信的性能和效率。1. 主要物理层标准车载以太网标准由IEEE 802.3和标准名称速率线缆类型编码方式应用场景100BASE-T1100 Mbps单对非屏蔽双绞线车载摄像头、传感器1 Gbps单对屏蔽/非屏蔽双绞线自动驾驶域控制器、高清视频10BASE-T1S10 Mbps单对双绞线幅移键控(ASK)

车载网络测试工程师的博客 4392

二分搜索法学习_int binary(int array[],int n,int number) { int low

如果high = n-1 => while(high>=low) => high = middle-1;如果high = n => while(high > low) => high = middle;戳这里获取](https://bbs.youkuaiyun.com/topics/618668825)**//middle的计算不能写在while循环外,否则无法得到更新。#include //必须包含的头文件。//第一个大于或等于num数字的位置。//第一个大于num数字的位置。//查找第一个大于目标值的数。

2401_84975963的博客 364

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

感谢ITPUB编辑的推荐,诚征读者的反馈意见

我带着最大的诚意来到这里,有任何问题,欢迎读者批评指正,有任何建议或要求,欢迎blog上留言或评论,或来信指导。 首先,请允许我感谢以下的人。 1、非常感谢ITPUB编辑推荐本人blog。 2、非常感谢朋友shegu...

326

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

二分搜索法学习_int binary(int array[],int n,int number) { int low(1)

/随时欢迎读者找bug,email:zhoulei0907@yahoo.cn。//middle的计算不能写在while循环外,否则无法得到更新。#include //必须包含的头文件。//第一个大于或等于num数字的位置。//第一个大于num数字的位置。//查找第一个大于目标值的数。开发知识点,真正体系化!

2401_84975937的博客 328

java读取qq邮箱_java获取qq邮箱中的好友列表

评论#re: java获取qq邮箱中的好友列表2009-05-07 20:56咖啡@可乐#re: java获取qq邮箱中的好友列表2009-05-08 09:07EverestSnow很好,期待继续 ...回复更多评论#re: java获取qq邮箱中的好友列表[未登录]2009-05-08 15:51andy很好,想去学习一下回复更多评论#re: java获取qq邮箱中的好...

weixin_39809175的博客 302

程序员面试、算法研究、编程艺术、红黑树4大系列集锦与总结

程序员面试、算法研究、编程艺术、红黑树4大经典原创系列集锦与总结 作者:July--结构之法算法之道blog之博主。时间:2010年10月-2011年6月。出处:http://blog.youkuaiyun.com/v_JULY_v。声明:版权所有,侵犯必究。 前言 开博已过8个月,回首这8个月,发现自己在本blog上着实花费了巨大的时间与精力,写的东西可能也够几本书的内容了。希望我真真正正的为读者提供了...

jinghuainfo 85

显著性论文学习阶段总结(一)

http://www.cnblogs.com/yingying0907/archive/2013/03/22/2975172.html  1.Mingming Cheng,Global Contrast based Salient Region Detection,CVPR2011 1) HC:基于直方图对比度的方法,每一个像素的显著性值是由它与图像中所有其他像素的颜色差异来确定,

wu_wenhuan的专栏 795

二分搜索法学习_int binary(int array[],int n,int number) { int low(4)

比如在数组[2, 4, 5, 6, 9]中查找数字3,还是返回数字4的位置,因为数字4在此数组中既是第一个不小于目标值3的数,也是第一个大于目标值3的数,所以make sense;在数组[0, 1, 1, 1, 1]中查找数字1,就会返回坐标5,通过对比返回的坐标和数组的长度,我们就知道是否存在这样一个大于目标值的数。upper_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个**大于**num的数字,找到返回该数字的地址,不存在则返回end。

2401_84975963的博客 401

二分搜索法学习_int binary(int array[],int n,int number) { int low(3)

/随时欢迎读者找bug,email:zhoulei0907@yahoo.cn。//middle的计算不能写在while循环外,否则无法得到更新。//lower_bound 查找第一个不小于目标值的数。#include //必须包含的头文件。//第一个大于或等于num数字的位置。//第一个大于num数字的位置。//查找第一个大于目标值的数。开发知识点,真正体系化!

2401_84975963的博客 281

二分搜索法学习

文章参考:https://blog.youkuaiyun.com/yusiguyuan/article/details/48052659 https://www.cnblogs.com/grandyang/p/6854825.html 一、二分搜索法 在一个有序的数组中,查找一个数,可以使用二分查找。 比如代码: //二分搜索法 int binary_search(int* arra...

我的梦 458

linux上类似迅雷的软件,linux下有没有像迅雷或者快车的那种下载软件?

clark_2011 于 2011-04-02 17:17:55发表:学习中!teber 于 2011-04-02 11:39:13发表:一直用迅雷,看来下东西还要两个系统来回切了,要是能多台电脑专门装linux就好了~~O(∩_∩)O哈哈~chy505908440 于 2011-03-23 22:36:37发表:淡定dzbhboy 于 2011-03-20 23:29:16发表:oper...

weixin_42314448的博客 305

ASP.NET使用SMTP协议简单的发送邮件(支持附件)

引入下面两个名称空间 using System.Net.Mail; using System.Net; 前台页面代码: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> &...

anchi0788的博客 771

有关ransac的几个博文链接

http://www.cnblogs.com/tiandsp/archive/2013/06/03/3115743.html

aurora_csdn的专栏 508
上一篇: 2011 09 06 学习总结
下一篇: 5个基于Web的开源即时聊天应用推荐
程序员迈克
博客等级 码龄16年 36粉丝 71原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值