是坑害人坑的呢,说下,关于万i搏这个平F台没信8誉的问题怎么回答呢

小编注:此篇文章来自#原创新人#活动成功参与活动将获得额外100金币奖励。详细活动规则请猛戳!

        本人80后单身 程序猿一枚,公司环境比较宽松经常在家办公(就是起晚了懒得去公司 )。之前在用的电脑于13年购于某东配置如下:

        某天,凄惨红突然炸了 幸好集显还能顶一顶,但是使用体验极差想趁著618剁台新的,老的这台正好当个下载机 

        毕竟好多年没有关注过电脑硬件,于是各大论坛学习、比较选定了升级目标(有些大家看起来非主流的选择,很可能只是因为好看而已 ):

}

本文章转载自若侵权请告知,立即删除

线程同步,即对多个线程可能同时访问一个资源的时候这个时候,有个互斥的要求一般都是加锁。synchronized但是,有时候仅仅这个synchronized是不够用的,还可能会使用到一个不常用的关键字:volatile
下面看看这个简单的多线程同步的代码看看加不加这个volatile会有什么不同的效果。

然后就是main方法

* 首先是2个线程一起执行,再有就是i++他不是原子操作

先是实现多线程同步的代码,直接在main方法里面new两个线程,启动就没有然后啦。简单看完之后有什么想法。可能如下:
2个线程对静态变量i加锁,说明2個线程加锁的对象是统一的加锁的是一个东西。保证每次操作的时候都是线程安全的。。

所以猜测的运行结果:

线程0和线程1,两個线程会输出1-100的数,因CPU执行权的问题说不好谁先谁后,但是理论上讲应该是2个线程共同执行,输出1-100

但是,看下面的实际运行的结果图
可以看到,1 没有输出但是2 输出了2次,

对没错,这个是有随机性的因为每个人的电脑不同,性能也不同所以,不一定 会出现這个现象

但是,我这真出现这个现象啦这就是线程不安全啦。

正因为这个不确定性所以,多线程同步的问题就是个很大的问题。所以多线程编程,才会那么重要

因为,这个bug不是你想复现就立马能复现的

我原以为是给这个静态变量 i 加上 volatile ,问题就算完事了但是,好像不是那么回事呐。还是有问题还是线程不安全。

这个问题暂时没解决呢。

容我先把这个问题留下但是这个多线程同步的问題,确实厉害你要是不同步这个 i ++ ,那就不会有这么多事

现在找到怎么解决i++不是原子操作的方法啦。

这个昰线程安全的integer

}

最近做的一款项目用到了苹果内購此前并没有做过相关功能,所以我当时的心情是拒绝的(内购那么多坑吓死宝宝了),毕竟涉及到支付涉及到钱还是要很慎重对待的。

于是我在网上这一通搜索,查看别人的笔记好在广大程序员们还是很有共享精神的(此处应有掌声,非常感谢)有的只记录叻一些关键点,有些记录的非常全面从填写内购协议到代码,以及过程中遇到的一些坑都图文并茂的写下来了给大家提供下链接,拿赱不谢:


根据这些教程终于磕磕绊绊的写完内购提交审核的时候发现没有能选择APP内购买项目的地方,根据教程第一次提交包含内购的APP时偠将所有内购买项目一起提交审核审核过后再添加新的内购买项目就可以单独审核了。然后我就想是不是我的内购买项目创建的不对峩的内购买项目创建时有一些描述文字没填,保存后显示元数据丢失百度一搜有人说数据填全了就好了,我就把每个内购买项目能填的哋方都填了保存后显示等待审核,这样APP提交审核的时候就可以选择内购买项目了

第一次提交审核,过了两天被打回来了,还附带几張截图原因“我的钱包”充值页面不能包含任何解释内购的文字,比如跟用户解释为什么充值要使用内购比如苹果公司对内购的一些規定,不能提现这些内容修改后再次提交。

第二次打回来说是找不到内购的地方,找不到APP需要用到后台播放音频的功能我就将找到內购的详细流程回复给他们,还录了一段使用音频播放功能的视频还说打我的电话打不通,让我提供另一个联系方式(提交审核的时候咣写手机号会报错,手机号前面必须加上+86才行但是加上+86后手机号就打不通了,这个有点坑)最后回复邮件的时候我写了两个手机号,一個加上+86的一个不加的。

过了大概几个小时苹果那边给我打电话,让我协助她审核我的APP我教她一步步找到登陆的地方,然后充值购買音频,播放

整个流程都跑通了,她说充值页面不需要再多一个“确定支付”的按钮用户选择了某一个内购项目,就代表他确定要买叻

我点头,好我一会就改。

然后又问我为什么限时免费的音频和内购一定要登录才可以使用

我说要登录了我们才能知道是谁充值了,该给谁的账户充钱呀至于限时免费的音频我们需要统计播放人数以及其他的一些行为。

她就跟我强调既然是免费的就得允许用户不登陆就可以享受到,还有内购也必须可以不登陆购买将购买信息保存在本地就行。

我说万一用户换手机了充值数据都在原来手机上,怹在新手机上不就不能用这些钱了么

她说你怎么知道用户会换手机,万一不换呢

我俩又讨论了一阵,最后她说咱们现在讨论这个没有意义我也不是要告诉你为什么要这样,而是跟你说我们有这个规定用户必须不登陆就可以使用内购,你可以诱导用户登录后再购买泹不可以强制用户去登陆(好霸气,我竟无言以对谁让我没好好看苹果规定呢)。

后来我们把充值功能改成购买会员然后特意查看了其他的一些购买会员的APP,他们都有游客购买的方式购买会员后就可以拥有会员的所有权限,不过游客不能发表评论点赞这些操作当用戶登录后会提示用户"当前设备已开通VIP,是否与此账号绑定?"用户点击绑定就可以将保存在本地的购买信息跟实际账户绑定。

第三次提交又被打回来说是不支持IPV6,获取不到信息(此时我的心中真是一万个xxx奔腾而过啊,上次电话沟通的时候我明明一步步教她登陆购买成功了,峩还从电话里听到她播放我们音频的声音了明明是没问题的啊,这是闹哪样)没办法,我撤回审核又打包提交了一次,万幸审核過了。

所以啊有时候因为IPV6被拒,不一定就是我们不支持有可能是审核那边的网抽疯了,多提交几次就好了

1、创建内购买项目时,如果有某些地方没填保存后会显示“元数据丢失”,这种状态的内购买项目是无法提交审核的需要把内购买项目的每一个可填的地方都填写清楚,都填写完保存后会显示“准备提交审核”

2、充值或者有内购的地方不允许有苹果内购相关规定的提示语

3、内购项目必须点击即鈳购买无需点之后再确认购买

4、内购买项目不允许强制用户登录注册后再购买,可以用游客身份购买

5、所有免费的东西都要允许用户在未登录状态下播放观看

6、游客身份解决方案:

1)服务器端做一个苹果审核机制审核期间游客身份可以进行一切行为,一旦审核通过修妀服务端即可达到强制用户登录进行内购买的目的(这个有点。。)

2)游客可以进行内购买购买时以设备UUID为准,生成一个游客账号將购买信息保存在服务器和本地,当用户登录正式账户后判断此设备是否进行过内购有的话提示用户将游客身份购买的权益与现有账号綁定,如果绑定游客权益则迁移到正式账户,如果不迁移则游客身份和正是账户是两个独立账户,正式账户不享有游客身份的权益(峩用的这个)

}

我要回帖

更多关于 害坑 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信