摘要: 1.Executor和ExecutorService Executor:一个接口,其定义了一个接收Runnable对象的方法executor,其方法签名为executor(Runnable command),该方法接收一个Runable实例,它用来执行一个任务,任务即一个实现了Runnable接口的 阅读全文
posted @ 2019-06-12 17:24 aizhen 阅读(2387) 评论(0) 推荐(0)
摘要: 事务传播行为 事务传播行为(为了解决业务层方法之间互相调用的事务问题): 当事务方法被另一个事务方法调用时,必须指定事务应该如何传播。例如:方法可能继续在现有事务中运行,也可能开启一个新事务,并在自己的事务中运行。在TransactionDefinition定义中包括了如下几个表示传播行为的常量: 阅读全文
posted @ 2019-06-11 15:27 aizhen 阅读(5752) 评论(0) 推荐(1)
摘要: 本篇内容主要讲解的是redis分布式锁,并结合模拟抢单的场景来使用,内容节点如下: jedis的nx生成锁 如何删除锁 模拟抢单动作 1.jedis的nx生成锁 对于分布式锁的生成通常需要注意如下几个方面: 创建锁的策略:redis的普通key一般都允许覆盖,A用户set某个key后,B在set相同 阅读全文
posted @ 2019-06-11 11:56 aizhen 阅读(3093) 评论(0) 推荐(0)
摘要: 这里我们先创建ObjLock类,并实现Runnable接口。并创建一个Demo类,具有被synchronized关键字修饰的非静态方法与静态方法。 非静态方法 运行程序,可以看到如下结果: 可以看到Thread0和Thread2交替出现,Thread1和Thread2交替出现,但Thread0和Th 阅读全文
posted @ 2019-06-04 11:59 aizhen 阅读(1313) 评论(0) 推荐(0)
摘要: 目前网上提供的大多数的方法都是如下: 但是按照步骤执行之后发现容器无法启动,或是启动之后没有出现进入jupyter notebook的地址。 之后进入tensorflow官网查看发现,tensorflow已经区别开了带有jupyter notebook的版本。 所以我们应该执行如下的命令: 初次执行 阅读全文
posted @ 2019-06-04 11:31 aizhen 阅读(1816) 评论(0) 推荐(0)