From c2ca31a7fdd1106f55b69e7e5ee50c97e89f47cf Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Tue, 7 Jan 2025 23:56:45 +0800 Subject: [PATCH 01/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 28 ++++++++-------------------- src/test/java/a.java | 29 +++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 20 deletions(-) create mode 100644 src/test/java/a.java diff --git a/pom.xml b/pom.xml index 96b1c00..3f27055 100644 --- a/pom.xml +++ b/pom.xml @@ -6,25 +6,13 @@ fybug.nulll PDConcurrent - 0.0.2 - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.0.0 - - -Xdoclint:none - - - - attach-javadocs - - jar - - - - - + 0.1.0 + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.11.2 + + \ No newline at end of file diff --git a/src/test/java/a.java b/src/test/java/a.java new file mode 100644 index 0000000..d82921a --- /dev/null +++ b/src/test/java/a.java @@ -0,0 +1,29 @@ +public +class a { + public static + void main(String[] args) { + try { + System.out.println(a()); + } catch ( Exception e ) { + System.out.println("11111"); + } + } + + private static + String a() throws Exception { + String a; + try { + a = "2"; + b(); + } finally { + a = "3"; + System.out.println("11111"); + } + return a; + } + + private static + void b() throws Exception { + throw new Exception(); + } +} -- Gitee From 9e6b4c85ce2ff6f273714201c7b8c4dc4e1907d5 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:01:32 +0800 Subject: [PATCH 02/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 42 +++++++++++++++++++++++++++--------------- 1 file changed, 27 insertions(+), 15 deletions(-) diff --git a/pom.xml b/pom.xml index 3f27055..83f31ea 100644 --- a/pom.xml +++ b/pom.xml @@ -1,18 +1,30 @@ - - 4.0.0 + + 4.0.0 - fybug.nulll - PDConcurrent - 0.1.0 - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.11.2 - - - + fybug.nulll + PDConcurrent + 0.1.0 + + + + org.apache.maven.plugins + maven-javadoc-plugin + 3.11.2 + + -Xdoclint:none + false + + + + attach-javadocs + + jar + + + + + + \ No newline at end of file -- Gitee From 2df3dccdea0225a7c701a3d5618e307ffe0ede88 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:05:47 +0800 Subject: [PATCH 03/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index 83f31ea..8633dcd 100644 --- a/pom.xml +++ b/pom.xml @@ -12,16 +12,17 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin 3.11.2 - - -Xdoclint:none - false - attach-javadocs jar + + -Xdoclint:none + -Xdoclint:none + false + -- Gitee From aa5ae808ff55b7d557cc1d29382ec53d1a340c92 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:06:28 +0800 Subject: [PATCH 04/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 8633dcd..cedd5a3 100644 --- a/pom.xml +++ b/pom.xml @@ -12,17 +12,17 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin 3.11.2 + + -Xdoclint:none + -Xdoclint:none + false + attach-javadocs jar - - -Xdoclint:none - -Xdoclint:none - false - -- Gitee From abae583ccfec11dbe9629c5402f8f735c559999a Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:07:06 +0800 Subject: [PATCH 05/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/pom.xml b/pom.xml index cedd5a3..e5517f4 100644 --- a/pom.xml +++ b/pom.xml @@ -13,9 +13,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs maven-javadoc-plugin 3.11.2 - -Xdoclint:none -Xdoclint:none - false -- Gitee From fe51ecc5b7598b16dd428b2b4271e8f5c6b664ad Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:11:30 +0800 Subject: [PATCH 06/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/fybug/nulll/pdconcurrent/SyLock.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java index 1d7929a..2fdfc92 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java @@ -66,6 +66,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void lock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) @@ -76,7 +77,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); @@ -164,12 +165,13 @@ interface SyLock { * @see #trylock(LockType, trySupplier, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void trylock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Runnable finaby) throws Exception { trylock(lockType, () -> { run.run(); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); @@ -338,6 +340,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void read(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.READ, () -> { @@ -346,7 +349,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); -- Gitee From b9394042a6e3d3203e462831b78515ea36b485d1 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 00:12:48 +0800 Subject: [PATCH 07/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jar/PDConcurrent_bin.jar | Bin 15502 -> 15518 bytes jar/PDConcurrent_sources.jar | Bin 11394 -> 11443 bytes .../java/fybug/nulll/pdconcurrent/SyLock.java | 3 ++- 3 files changed, 2 insertions(+), 1 deletion(-) diff --git a/jar/PDConcurrent_bin.jar b/jar/PDConcurrent_bin.jar index 27dd86ee8081117386b9cd6d9a9f3c06e787a8ca..8b3d7cb68bd6ec0311e8f2039ccc9cc2c64517ee 100644 GIT binary patch delta 3022 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 F`42uUhsFQ^ delta 2998 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 diff --git a/jar/PDConcurrent_sources.jar b/jar/PDConcurrent_sources.jar index ea47ab642fe7fe7c73d815ec53d8dfee75682fae..8370a0a1af54af0e9e2b6d19455b2a401e445993 100644 GIT binary patch delta 2291 zcmV@6aWAS2mq7;D3J{&1C#+Mu{MPP1BC%7v%Uez91(>9C|bi4 z%cxxl004VF001PDKmr_pQ+Z5pV{0yIVRm8dTU$>XM-+ZG68~Y9ynqEJ?PDR7DoLeE zQCm5YcwWpB9GtbaUX!8-$=nPi7}L}V2_!%i0!gaaL`jJOQ+`Z6Yx}8xp=V}xXV<&F z;wy;1l@G7wPUbV|Ej0HAt#9P^ zX0mIu%F_dsj^)=@a;q^Enaj_-g+?O-AW%L%`8T};jY>SJEKQ;9Xg2dT8;^1)>o7;j znIwT9HqWH8IzEA~x#SVB0>Rmc`;u1{@DM98iae*pDE3}?v4~#0WlU%nN^E48_c&E{ z_aK%Y=3b0{V(O(swD9LY;b}CtpE-U`Ni(VKOzM5+;8A|{v$DEHX)MbC9XOptB(h|x zS6EIab%5M-KSb$iluEHKB4iRvsBNgS{07BdW33qIsZrti^hxQOw7Es$zSDVA z)fZ!*TmFJ#PpLMH=7bF+v61=v5o1SK4)7s))GtwgAkmg_K?;J!b5~s7xUQ%~0Wa9R zz)^u49x4-kZ;G>7j8bGV zM@R)k;dBAlK6gJ|LT+b@EdlRpG+|hA<`DZUqDnhjylw zjTf--R45HmbSaZ6Bed|G$(D_OETqY#j!-hqmQ~n^Cl9Bo+f<$<(aH{nVSJPBUcm@| zP}QVy6O@IgYLBX%f?k8+WR8xM*;pnOW_t-fC;RRY%r(3I8DN=xcajgsu!IC8nbbo{ ztbBN#eU+e=MFpjf8pO(nAH)2)@Eo0xK!D7A7>B*eA3e(@wt-&rKM(>ZsVfEolsqsA zjvg-+ZcBdVn97(rj^J$}dy+Yf=nis!W)4OEQk4}Hh_cGYm}{khLb_TvP|< zAP&WWEy_)h(=nh1a5jtqs*7WNhPm-jP!#S|Qw1hN-;LiqLI6K?aX_W6y$j|epJF52 zgp%$_C&?kcI<#sXnr^md>CKGtt7fXDriNB6XErnyp)y-8G+ib}dXt%?!4kWFm>KC$ zon?%E01uReU~rI^M6Y-!*l{T&hJwQIB|K_a7~w-c8J@=d-r?G?p)JJ>3~kjqFs!K1 zsTmg)4nTneyn~3MPu$VTb@!9d?{L6;F8JGlp@Y9t-!Ia9+~Jt)Vuo<_Drx4vr~iG& z2|5>*#>IQElpR88ZmLCCm`OT+GfGlcD$+hl!QRtd+ouIx#MC@g7HT*Hhp;^h877St z#^BJf#KpGkz_ga~ODG+Y8Vh0_ruE0LPVNDxZioqE1jl&I^xw{2Zt|QMp1t9uqF-;8 zvg`B7om~Bn)MyQMxi7T$GM9YPbXzK#;cQo*;h1eNy+(`mRw?C9QH6zni&kNlg&K+# z-6J;I5rYmW!MQEp$X+$QUMm!IjgB%cofKcN!O*YDtryCTD!YKA?Uh$S9mUC`lK*~? zV_9eKSGUvXg3HEQsmd^`nNfvEYg#ad}d)}}jcyl%Bpr6oXD3_jc{Psne@}TVa69f2};Rf`L^i*4pF(TAFROiLHvS+buTA_nE5{XN{h# zrVri}YiUexEGya`PPhw+?Jj?@4OQW&?7Uj3?29hDZ~Sn*IR_-F+{_KoJCmA=+-8n_Z6 ztHx_fX}mtXHbpxGuvX<%M69Znvp;HVnwvg@3sWsktnv*HJFY|<@_t8i+*+BVs}@R2 zYIwh(;(3^{k}8?wFmBq*2xpe)oFRg$d8MGy@Tt!I*Y-j|0}Z>TGqkcPU$t)zlsika zDQRr=w+5P?%zTZ1YUenrwNn1xoVaEz2C58f7aK$uHn26&wrh%PNIafW+0e_PYbnLkyvSf*kxhAT7B5S=BFkb|fI;Aat8`L5OVek2DL#}ixoXwWM zwyFEPwpglb)T7O@`r-rI5+xgh>?%%gYk;=-M7KP)Tf`=RY(C3v2)HYq<5r38Q=jdg z+10H2d&u-w_GnYhp2-gs&06|p=q_HRo(Za31&=}eJ7Etzs5JPOm+E7O;cfz2Io52k zTPg>B?_fR(=`#CCs#y-VP*Ds@g6E@8W+AlJ5;B;66KfG*u(AMyOn||n0t^}ifIt5M zP)h*<6ay3p000OG0F(hJllmq!1C#+MlQAc)1BC%7v*9O21Pz4&C|bi4%cxxl004WF NGb~94947z(007Q^J3RmZ delta 2241 zcmV;y2tN0-S%O&&P)h>@6aWAS2mlDVCy@;%0|>b%u{MPP0|K-sv%Uez91#knCt7Yb zmjf&a0009%001PDKmr_pQ+Z5pV{0yIVRm8d8{1ABNA%f9`G=MA0v4FGkA+aGB$X;f zY2`%Xv0BU$9GtbaUXvnZ$=nPi7}L}V2_!%i0!gaaL`jJOQ$D6UYx}9c&@(f;vo;dP0(aB#3g)r8e*VfM1fi zd;A#h3dvrdYd9o&WUpUzUGs~<(0xIw2=t@&06+|^95t8Vy6N|f-Wd-FJ=KAMgiDsj z-62ur2Yq#{xE%@veBNTdM|nx+UA!pzWuEYT3ziq7)q%!%pLd7?0q&qI@m^65x^DSp zyoSix?Q~vhd^iFIND-h#w;% zB-Hq0Om2SH!^@r#fExCSyw8W1DCrOC!cOkhV(*~TON4euQpi!2RB=AFK zN*b!8WB8g&9Rey~oUM2ud1V1Fu>zy$a|(>&@6{Iz=*3%xgifL4dUk1-(|C6eVD5qT zLJUJM9-#SuKmUnLq1ip<=s5*d(pyUUy|Vu(zw%jK*`zQQF+c}SCt-<*O!W%lDCq+f zPpJ>r(A)vaOrdm|O%Wzjm_vO-)ulHm{u*n=08fny(<>0AGU>EM;epe6Q_~kipIiEZ z;!mkIjOK(5Be|~p{fMC>DEs-4JmQzABhisDK?;I@#dB9&-?*-5Kmjke3FH z-vg@yW+?91AmA5oM+ujmoDU#?$cJ_`haB%bZQ z)D{R0`n(=+NKqD~VIDwlk7HT6iA!w`;&TqRA)sDrW$NM_=7HEh1?Ua*(FfRaqnns* zn6AWsrn@>rRf$D9UdBjQ_HuLYQFa4J5B(078Z)& zh%|%a90#rnyppfLCt6-&@F1WTxQ_ln3o+e)HVsJdW?&o|lEU7UMzav3p2Y$oWe`O& zMOb^?eN=?p_9PPl?`kY*5LjCx335mhIf}9%aC8$Mf`>!fQ|kH)*m%m6 z?om{fu!acDKWDsU6CaCVl=LA=WtdpSlbCoUL&K)}EQOZ0u^T2f=Po6Vovtm0hnuc?K8M#_T6zl62}}8CsEQ5DX{wCb@o+~ zS{7xL25Mj{A9)P)bCFp}khlP$e2{>>${#+kPw??#TKO2`*XybC7`Iz!v2u zp3~m1C2+QkIaDXd<_xs)Qcx70)Jg@$L+_2>JVF3Jb#efu$=(U{$fwi_H-V&k(m`s7 zuK}&rfL1Wuvy5g&{xvhzOH;$BUNakpNZ@1DF!w$E?>kN?V9{V)ya#jHE|kZn>D+?s*8(yMQjse%9;WWx z-BsVG1%trk9P|!a!UC7ynt>XBl4b*A_-|NgVq5+<$x>N_@;RqjZhHDG)xk}0+J=~X zjQBB@nf}|+!-da@;n|xosz&bf5tBQ((+5(cHP{ut(C*7z>PgdWsbmeaReKF%w!O?M zZO2=sSvx_W6)D+gSp+q-BZY|A=s*lQpaAE#K_h$B^p32U(N((2Bsyt-uV8~=UgNva z3OA~;0*tozRz;l>Cyz+}2SJWiojqT}PNQ2Y8@r(z)2wbrRWfZI`L$ldEZ6p!8ySl| z(xj`CJ84F4wPvIx+^Up=oV(VeWX7wnC@eH^2?P-hf!0f%PEP?&AVlnr+=j zYlX!|#XfT%;;b`r)%C%Dn__K#>8)c`+ruSwF|geYF1Dc>0+pTDBh_QkW%rFAt~cih zgj^5Tam=AJ;leD|eAdxY>ONJpXo_k`6thoWxxTlQsKmOKJRc{@N7n5QnuYr>e(lS~>f}#HNLR=`*v<;vH*b&m5^D^=*t$y~;AzsA&cv7P9`rmj}$ZyJ=mPShc_ zdiJvKs>tSg^CX9V^i4XHvFDb@Qt373s;By?s`X^we3?`3q_y&mPKy|Xy=SZqxt6JN zzFPU}<s9S{iJ8sp;f7WplOGD2we<7gJuD^LLVc^?F^GRwuj_#a4F>-LQhRJS+%Lc= z$A&F-OZmX>4$Q@%AZ9-eHS^&XsJq P1CwMdNe1gC00000gk?C6 diff --git a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java index 2fdfc92..8a9e548 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java @@ -395,6 +395,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void write(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.WRITE, () -> { @@ -403,7 +404,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); -- Gitee From 929f29e0dbe93b90d6afdae9276ae7c58e65fb3f Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 11:50:02 +0800 Subject: [PATCH 08/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e5517f4..b6d4be7 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin - 3.11.2 + 3.11.3 -Xdoclint:none -- Gitee From 0c00e2a320fed27e1d88fb710108630e0bb0a653 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 11:50:48 +0800 Subject: [PATCH 09/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b6d4be7..9a75a32 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin - 3.11.3 + 3.0.0 -Xdoclint:none -- Gitee From b9043d2ad5d610495471a6b86aa23602749441e1 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 11:53:08 +0800 Subject: [PATCH 10/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 9a75a32..c50e43d 100644 --- a/pom.xml +++ b/pom.xml @@ -11,9 +11,11 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin - 3.0.0 + 3.11.3 - -Xdoclint:none + + -Xdoclint:none + -- Gitee From 434cfe902d0525f0b8f1fd8ac141dbc98329fa5c Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 11:53:50 +0800 Subject: [PATCH 11/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c50e43d..13d3b31 100644 --- a/pom.xml +++ b/pom.xml @@ -11,7 +11,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs org.apache.maven.plugins maven-javadoc-plugin - 3.11.3 + 3.0.0 -Xdoclint:none -- Gitee From c07ed581127bcd39849e4c4455b8e3789ab63a3d Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 12:03:15 +0800 Subject: [PATCH 12/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pom.xml b/pom.xml index 13d3b31..6fcb445 100644 --- a/pom.xml +++ b/pom.xml @@ -13,9 +13,11 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs maven-javadoc-plugin 3.0.0 - - -Xdoclint:none - + UTF-8 + true + UTF-8 + UTF-8 + -Xdoclint:none -- Gitee From 3dd215228d2f80928e336014842272e019919693 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 12:08:53 +0800 Subject: [PATCH 13/18] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E7=94=9F=E6=88=90=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/pom.xml b/pom.xml index 6fcb445..d5f398a 100644 --- a/pom.xml +++ b/pom.xml @@ -13,6 +13,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs maven-javadoc-plugin 3.0.0 + true UTF-8 true UTF-8 -- Gitee From cfd971c1153ac3e9fa6e2a8ebdb44a6c4c7d492b Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 14:10:13 +0800 Subject: [PATCH 14/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0javadoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 8 +++---- build.gradle | 6 ++--- pom.xml | 23 ++++++++++++++++--- .../java/fybug/nulll/pdconcurrent/SyLock.java | 12 ++++------ 4 files changed, 31 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index d71eb39..49817e3 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,7 @@ 本工具采用读写锁标准,无论内部实现如何,外部接口均提供 **read, **write 方法区分读锁并发域和写锁并发域 -### \> > 基础使用示例 +### 基础使用示例 ```java public static void main(String[] args) { var lock = SyLock.newObjLock(); @@ -45,7 +45,7 @@ public static void main(String[] args) { 可通过接口的工厂方法实例化内部采用不同实现的锁。 -### \> > synchronized 锁 +### synchronized 锁 ```java public static void main(String[] args) { // 使用 @@ -62,7 +62,7 @@ public static void main(String[] args) { ``` -### \> > ReentrantLock 锁 +### ReentrantLock 锁 ```java public static void main(String[] args) { // 使用 @@ -82,7 +82,7 @@ public static void main(String[] args) { } ``` -### \> > ReadWriteLock 锁 +### ReadWriteLock 锁 ```java public static void main(String[] args) { // 使用 diff --git a/build.gradle b/build.gradle index 7fad4d0..a50a637 100644 --- a/build.gradle +++ b/build.gradle @@ -63,7 +63,7 @@ task PDConcurrent_bin(type: Jar) { 'Build-Jdk-Spec': 23, 'Bundle-Description': 'java并发控制工具', 'Bundle-Name': 'PDConcurrent', - 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', + // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', 'Bundle-Vendor': 'IntelliJ IDEA', 'Bundle-Version': version, 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', @@ -82,7 +82,7 @@ task PDConcurrent_all(type: Jar) { 'Build-Jdk-Spec': 23, 'Bundle-Description': 'java并发控制工具', 'Bundle-Name': 'PDConcurrent', - 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', + // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', 'Bundle-Vendor': 'IntelliJ IDEA', 'Bundle-Version': version, 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', @@ -107,7 +107,7 @@ task PDConcurrent_sources(type: Jar) { 'Build-Jdk-Spec': 23, 'Bundle-Description': 'java并发控制工具', 'Bundle-Name': 'PDConcurrent', - 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', + // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', 'Bundle-Vendor': 'IntelliJ IDEA', 'Bundle-Version': version, 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', diff --git a/pom.xml b/pom.xml index d5f398a..38a91d6 100644 --- a/pom.xml +++ b/pom.xml @@ -6,6 +6,23 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs fybug.nulll PDConcurrent 0.1.0 + + + org.projectlombok + lombok + LATEST + + + jakarta.validation + jakarta.validation-api + LATEST + + + jakarta.annotation + jakarta.annotation-api + LATEST + + @@ -13,16 +30,16 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs maven-javadoc-plugin 3.0.0 - true + 23 UTF-8 - true UTF-8 UTF-8 - -Xdoclint:none + -Xdoclint:none attach-javadocs + package jar diff --git a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java index 8a9e548..1d7929a 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java @@ -66,7 +66,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void lock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) @@ -77,7 +76,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -165,13 +164,12 @@ interface SyLock { * @see #trylock(LockType, trySupplier, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void trylock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Runnable finaby) throws Exception { trylock(lockType, () -> { run.run(); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -340,7 +338,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void read(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.READ, () -> { @@ -349,7 +346,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -395,7 +392,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void write(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.WRITE, () -> { @@ -404,7 +400,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); -- Gitee From 1a2ae0996006aa9664644aa180bfd9f0882a1a5d Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 14:12:52 +0800 Subject: [PATCH 15/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0javadoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 38a91d6..1478c00 100644 --- a/pom.xml +++ b/pom.xml @@ -30,7 +30,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xs maven-javadoc-plugin 3.0.0 - 23 + UTF-8 UTF-8 UTF-8 -- Gitee From d141f7fae8bb04847b482dfadcb12e4fd00ba320 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 14:15:08 +0800 Subject: [PATCH 16/18] =?UTF-8?q?=E6=9B=B4=E6=96=B0javadoc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/fybug/nulll/pdconcurrent/SyLock.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java index 1d7929a..8a9e548 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java @@ -66,6 +66,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void lock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) @@ -76,7 +77,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); @@ -164,12 +165,13 @@ interface SyLock { * @see #trylock(LockType, trySupplier, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void trylock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Runnable finaby) throws Exception { trylock(lockType, () -> { run.run(); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); @@ -338,6 +340,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void read(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.READ, () -> { @@ -346,7 +349,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); @@ -392,6 +395,7 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ + @SuppressWarnings("unused") default void write(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.WRITE, () -> { @@ -400,7 +404,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : _ -> { + }, finaby == null ? null : r -> { finaby.run(); return null; }); -- Gitee From cd3bccc1d312898d7bf24f14068c8cb622c64395 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 16:43:01 +0800 Subject: [PATCH 17/18] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E5=A4=9A=E4=BD=99?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 72 ++++++++---------- jar/PDConcurrent_bin.jar | Bin 15518 -> 15508 bytes jar/PDConcurrent_sources.jar | Bin 11443 -> 11926 bytes pom.xml | 51 ------------- .../java/fybug/nulll/pdconcurrent/RWLock.java | 4 + .../java/fybug/nulll/pdconcurrent/ReLock.java | 2 + .../java/fybug/nulll/pdconcurrent/SyLock.java | 27 +++++-- .../nulll/pdconcurrent/e/package-info.java | 8 ++ .../nulll/pdconcurrent/fun/tryConsumer.java | 2 + .../nulll/pdconcurrent/fun/tryFunction.java | 3 + .../nulll/pdconcurrent/fun/trySupplier.java | 2 + 11 files changed, 73 insertions(+), 98 deletions(-) delete mode 100644 pom.xml create mode 100644 src/main/java/fybug/nulll/pdconcurrent/e/package-info.java diff --git a/build.gradle b/build.gradle index a50a637..1984629 100644 --- a/build.gradle +++ b/build.gradle @@ -37,88 +37,82 @@ repositories { } dependencies { + // 本地依赖 implementation fileTree(dir: 'lib', includes: ['*.jar']) + // 注释包 compileOnly "jakarta.validation:jakarta.validation-api:+" compileOnly "jakarta.annotation:jakarta.annotation-api:+" + // lombok compileOnly 'org.projectlombok:lombok:+' annotationProcessor 'org.projectlombok:lombok:+' - // testImplementation "junit:junit" + // 注释包 testCompileOnly "jakarta.validation:jakarta.validation-api:+" testCompileOnly "jakarta.annotation:jakarta.annotation-api:+" + // lombok testCompileOnly "org.projectlombok:lombok:+" testAnnotationProcessor "org.projectlombok:lombok:+" + // testImplementation "junit:junit" } test { useJUnitPlatform() } -task PDConcurrent_bin(type: Jar) { - destinationDirectory = file('jar') +/** 清单文件内容 */ +tasks.withType(Jar).configureEach { manifest { attributes('Manifest-Version': '1.0', 'Built-By': 'fybug/风雨bu改', 'Build-Jdk-Spec': 23, 'Bundle-Description': 'java并发控制工具', 'Bundle-Name': 'PDConcurrent', - // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', + 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', 'Bundle-Vendor': 'IntelliJ IDEA', 'Bundle-Version': version, 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', 'Created-By': 'Gradle 8.10.2') } +} + +/** 编译包 */ +tasks.register('PDConcurrent_bin', Jar) { + dependsOn classes + destinationDirectory = file('jar') + // manifest { attributes(manifest_val()) } archiveFileName = 'PDConcurrent_bin.jar' + archiveClassifier = '' // 打包编译输出 from sourceSets.main.output } -task PDConcurrent_all(type: Jar) { +/** 源码包 */ +tasks.register('PDConcurrent_sources', Jar) { + dependsOn classes destinationDirectory = file('jar') - manifest { - attributes('Manifest-Version': '1.0', - 'Built-By': 'fybug/风雨bu改', - 'Build-Jdk-Spec': 23, - 'Bundle-Description': 'java并发控制工具', - 'Bundle-Name': 'PDConcurrent', - // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', - 'Bundle-Vendor': 'IntelliJ IDEA', - 'Bundle-Version': version, - 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', - 'Created-By': 'Gradle 8.10.2') - } + // manifest { attributes(manifest_val()) } + archiveFileName = 'PDConcurrent_sources.jar' + archiveClassifier = 'sources' + // 打包源码 + from sourceSets.main.allSource +} + +tasks.register('PDConcurrent_all', Jar) { + dependsOn classes + destinationDirectory = file('jar') + // manifest { attributes(manifest_val()) } archiveFileName = 'PDConcurrent_all.jar' + archiveClassifier = 'all' // 打包编译输出 from sourceSets.main.output - // 打包源码 - from sourceSets.main.allSource from { // implementation 相关的引入解压并打包入新的jar中 configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } } } -task PDConcurrent_sources(type: Jar) { - destinationDirectory = file('jar') - manifest { - attributes('Manifest-Version': '1.0', - 'Built-By': 'fybug/风雨bu改', - 'Build-Jdk-Spec': 23, - 'Bundle-Description': 'java并发控制工具', - 'Bundle-Name': 'PDConcurrent', - // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', - 'Bundle-Vendor': 'IntelliJ IDEA', - 'Bundle-Version': version, - 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', - 'Created-By': 'Gradle 8.10.2') - } - archiveFileName = 'PDConcurrent_sources.jar' - // 打包源码 - from sourceSets.main.allSource -} - -task release { +tasks.register('release') { dependsOn clean dependsOn PDConcurrent_bin dependsOn PDConcurrent_sources diff --git a/jar/PDConcurrent_bin.jar b/jar/PDConcurrent_bin.jar index 8b3d7cb68bd6ec0311e8f2039ccc9cc2c64517ee..6899086d1faf720f96032c4d4a0e2fd6a4fc3cd2 100644 GIT binary patch delta 10356 zcmZ9SbyOVBvd0M$+#MEoTLJ_pkl^m_?(V@BU0fG;cXtVH!6CR?a0u>_m;CN|@4kEI z^qFt>Om|JqA5-TuU6uVc@hgg=3=Av|6chpilx=W43LUg=~?HEHOm5Od?a znfAn7zSottl!BI1A@9QAl47+okxrkUF60b0UhFJ9i?Xem05>f(EU@3|fUta-(S1)v zO1c?l3vO2)l55Si%}w=UZhUhlXSBk*4YJ-44T-zQm2iK22#^AQU`>ezn?A6lRWwW6 z%i&j>X?YbWH;XO10YoH0oySOed{uTjAJ^NrO{cQHZXxx`B*)9a!Dqpg&0zG>fEhL{ zHLHGWs&3FILd>&St%q^VtX2X=Lq1fA4iZF|gb@Z&g2z(B4b|bOC*x2?dmU-gyhmc& z?46Wmb5it)%+lm=O;SZD1HYnb)M7x@?BapL)4#wQ38oQ&qqj*w%;Jt}{hYe!P%FGp zu*a=|evmR_*fEsLFP7jVy6$o+$u3Lr3sR9CTj|9a~>`FX?a3QT~(w| zFal0yBtRNGV%H&@*ubko;BDV&$`f)owD0VmrX%(%wfr1iepIAkB#t!HC_CxVk9Kz2WHp%)pQr;Y z(8x5wv(um?pvL{312tz?37|#vy(~ZvRmW4Z^Ps$?X8YZ8A5W?{X$V5syyAdIBAo@F ztdlJnq1U7fG}{FutITSi4UhWy+3PH^JV;4rTIC9qY4%aWx!Lz8mlsJwN(_Vb@*<1s zkvE%3#?^$4O8eTb_x9!Zgc~JyNa}1MoX5l;vGToWuknqK#u*5m5(F<7)|7XH zq1%%|bae=*W0J}ad7aP5H++ z_P1{Z3$gNk4oJ)?A_?8$N*fsE7dT2Y2#6(?ze}r_)1g94BTWmh9*2$Iyf@2U=4x+N z_|8TCFzX+a=Y zM~I3M9;hUhsuSl()p)ClKH&9}Z?f#jc=>RzG(1y!Y{sSvPMp7%nZ;+<-5;P1&TpH)mOOehty5Q<=zxk)e|NkxuW%zf~(F0crY2^ z1+GAIOYh4N!Q~Ga@=clYt zxN{|?QkDc?5{#mV!OQU|-T39tbaKBx<9FGudX<>*^j+vJ;wW$4hXB_hAQl6HAI_pj zRmr##o_?#YG8LC{C7*3^DscKYFigRLl7_+}M1)|ajiV*H^T+N`@_EjQt@rf|vW)t? zU}0SeFn`Fgjo-LiMkLIu+I5qaBy<<$s3FoU!HdPtY$@*dq- zB!wY5aS%14co+;aPN$@sl3owaZt#C6X+MLAv~%##2g zBC;n%<1wH&a%*C*Q}wx0MN*-C4eQ6O2cS(v630AGC`ww-ptQ*E73lGGwGi=`L;G;& zvRYFEijlbJz7zKrXRM#1xJ7)ngS7Bhi?iM9%)D9~X3m~iPeJY4 zM>p`g(cLtU4jv2yWUYs$s0;3%y6_AmF_{JrDFV6QQ#WzZ&jj%loy43I?I#y4C{!Of zoHLkU+404w!mTZH?d8p0Ij5#&_Lwx?3e8+_cICw2OJJDMK&8)^hlYMtlSAEKzcR z0IxEZXe&O7E%gGeQ=iHH^LsbUbpQ1FhZY#IprC+IP*CPyjomC*?cHn}CQ+H;{s9Uf z;o{3zm_Jkg1r$JR0BFhD<_A#%H0|=z4Ts`v@X!FB98#j+Piuc%ZeT;E*@DW{kr+tX zi;&f8IWqgLIJ>KXnF-B4$4PmpDFTA@0PPgm-Iea0F#T*XAvn-RV+An*mjCa{e&sxyFPH6_3yvduRU zWRB}Q`9(rC-RwjOeG^84U^rBbIs!`F9QJ2k6MvYD$_Em{d}tl<1$%hoVR%j1%8+G+|{Xc zQs;G6AmImQv;s2sCzPA%X*lU^alt4FvX=AsQc2Lp(&j!1*|pij&wF8AOSt4x)`?~% zjt<&r0j$2{wF*2&`SJ$eUy{{ij$^i7{d{64f9b;gmPF?l211AyAzFbl7ml@?=I=oM zZ+6ptD1=q8o&p35xc*a|qJ;YU^oS~eFS_98yy$sn)v=R}@;80@8Xl{Icb^H;M<)S#hqk4{6UyiZB$fW~qAi1D9MAoidEe zw~8pjYIL64uP!z+it%SxV8)!eKWtI%&c6y?Ysgr~$)5I29$7Fixm4AopZe$%jhfJi zqdb>5x77?5Kx$C&BppV6!4T0Bfm16#0-1bP0W3X(^{=pmXL!Fz|3M3*;!pIi{GP7Q z@}JnJ=p&P7H!B?XPZ%Zm?Mxy2;c&e-b0knLJX48(XE4~thHmH3d^@+QLYVRW@&D+RC9Fq&;|n=PF$OpxUr)Z zu%hBizlf2cgbO7|iv|)A>w8Yq{f6_U5v=GXJJ?7AuA6l*3=zz_cJbe5pRb+!-TT~6 z`u#pw+ zQ2OJcCQTMGoI1l|<&i9rNEx>J3N`}G%JA{`Za%Pix2Yh|Qz>uv zNw)Wa;Ll6cyOllr16889t$WVRL(?I4&`o!Zy2VLK-fSRX=&wkl4qdClt?y08tpn%uWaaoR~OCpvs(A84!O8mQUs47LG!0M8yY830g%j z&o=+u89E0!WoBB8ewLzh;Wul~wi-{>;xB05`%zpbwt86{-J8k%z3jV}0>iw~ET@9D zsw`qovYL#yP#rTO5S39yO`$$QwH#eN4oRgyxS5*CR%qC|VK4%z4NhX=tiB&-dbT)4 zFgxFVwHz!)Bfk{G5I{-S@=Z9gs))}}G5{~iOkxhi&$l)!QLZ;1cvO`d-sAGeW+1d~ zn7ZL$m_>03TH06KvKT5FH7>8UiL9#>MQ&pSzG4l><+nVK*5`%W``0m|E0s(1>)J}{ z#tNK9T$xd3bufjEBv6+znC(&R>I$SygNsa|txFeqU-f%TFp>77zSl)!CO01|@$Vn2 z+OHs2V5h;?d)Pww%rvA%xe?o6ri|QXr!9an&QDBKE}RKWtyVTY$xl`H3afU`(zaV> z-B{4*m)%kuk1yqAW*KA%KJM3Nf|Rg!g;cJDJIKw}(^Q*k=fImQ!fQ-VSl`AU{8*mn z0pbF+`Mbo2Qn}6*Y}6cU_abDL4hGhUWEy@CyC{G^7j5L{Fx^UZKfsFAh@sG$4jr>2{P?f32Xj`w$)t}ibD5Ud0IX~AL}viFIob#y@_7Z;3^*RKMC z%IbGhv*tXMXKF8DCyk4jk@eT7@vrGC-xf4?|jW9Q^u~0cz0S-N*@SESa-{_Ae~m{2BjbwU+0D)HN>J5y7U8sa+VxS zzuND5Y#190st+Rr?np#DDDC7>`awl=PnVkPr8|+BaAO=?d(7ROEX_=lcf5fNjV=9D zd`&>?YFACLFH9C*+PFg;Nz|M9a0w~-WCk}rcvEahc>WJ*T}`JM*z4MZ(9=E>)?Jm2 z*7ZoN3>6i7XQ3>gd!|w|Gn= z^y!{Za39{!KGD8zh!by6Z1RG#{T| zr&9+5C5_|FK5Vh|B``OO7Sc3L=PJdrBa;uyOJ*7lyMM+QncPoh=F*as)g^~h_7}RO zcuZDRPEy^&H!b_AqrBJZym6vlArTequgWN9rGM{xpXL4Q>X-LKjbN7__Gb=Y=ys5S z$Y%)~PEeg1(3TS{L1kLCCi?U|8(zs^)Hl7AQhXrU(f(P_>?QjPQ8`~< zYNRsiHMMkFk3dNL$I61bXDv>HeQU6u~w5D z;9%vqFRA0L@{AS`;n^#O>f9^Bm%L>J{sP2UawK~(!%05UjFEs9M&qOU)>MDI(MxLM zw!q{Zd#o8g3>#5&6E;zM`QhAf(b%KIlq-K0 zyIy}ZWQKR^>N=Ri9^`QZQR_`X2q+Z=xS=3>-l^%s;s#4m=AGhGN!QVvIaJHh%^D-(XeHa zBG58AF6vxthVInth~b06w)K^&3vu>X^2Lptk`~bf6%;cC1MD9NX_<`7IO;mfPW96% zj|(0ZpQ9St4C}Y9E;h3DMAG!Fq<>q6O-F*=M;RF(pfnC1zI3bmF3JFvuRvIF2im{?zXqB>YhEQ`n}g)x8AL=X|d;- zI(-_+;=B5t0Ppab(?`T`nVRWdl*3#1 z*YOjjP6Z$S(ynlL6t%f>E*(3zMZOP31RB)iapK-_VS8bQs3xB z!sj{Aj$gIkcpujAj{S+}yNv7Ik-5(r)@g z6r{~Ryu~PWM^wF5zWy-L{r$i=ObnpEvw84PBBjmBVDNnT6-1eksW8MRyIfj|{=@H) zU_rcM_`-97)Ar{rI|1U_(3&JU);F*h*=B*sk{_m*Z@f9xvUK?}O$OY}h+uoMz!a&fz)giFYR$32Q6=f)N6aqxP{WILLq!w`!JfKo z4rke!!C8R9E=Y|NO_6f%9qs~tZB%zjY8tEaUJBugMyp?H9>0V)70NDsRkR`1u$(8P zv?d?3#)w~^?(Ks^vTVM|@F=828UaM67mLPpjPnb=s0eZYa%7OL~R1h~XO6nB1O2pFn z?WXY?RpWO>^&8=FPEq4~8Zx73a2r1-N@(`nw5~SaCC>|+2j(&=Q?F3Cg+twSdEtKV zLE;=Go0e9*zmC@3`JzBK6*XpJ6RkWJt*BN>DLPJRlfRz$yADcdY}`C)DlF6G%Iwm{ zGDhsAL6BDzERZ7?SF@;H6cwVmi!*Gl2IxrTyEy0Nv@bSo(7~x%)9X9iZ=uB%MazYf~NUIsv4x3ZZOrq{@{IaaL$q3?ry!3 z+bh^=u7f--pp58lvBt^fya+*cnAO(%M9Avh!Y^F{7o0rzKQWt&YeX5<$l7kQHVMi=%qw)Mp$dK?~}b$$hJ<^j4bAirTM9%E6?a|F(+CQ^F|10_ zoxZ(T1pW?jyV6(~-XtjPZUDY*^O_L>-~lT#jP$RxU3(a#yusEb+Ir^L(w&4p2-hiaq4gNj?heGVNsPXMG75~LQTB(f}zT1Q5H7Dvo? z=%{YM2sl#6$tT*#t(r@Rlt<6iCL)hYb=e6~qr)Q7LnL%pj4tPpm#hwQ1sSi2^|(zV zjTVLL+hbRFVR!q4lz0zT3}OLA3i#td4ko5cF&cd2?bGUWJW=y@_!3Ho4vC-VpzUW} z)_4=NdVy^!6~nqg7-CmL(AIcYh5v?0XdAZWplYt22i(qx0aU3qqvEVyfL|CH@0V-n zBn7w?HK_0Q{z8*5H`{c__gER--?X2WhB#lM)(auK&-8ET|4Cd+7aT>BNKjDi^iWVV z|F=sB`NTp2^7h1;$NjxN@k_p*KVafLG$vJUJS~M$xPU5FEykAs|J3Qi#t3;XNUbRc zvAacpVN>%%Zr5Jf!=cV|E|RrPc$M9}b>!V^V^#BO%h_W0lRx0->GGu8@ zs9rA<@urGr%ZrEK*K5lv#JZbt${op++eOo;bu>^>jRdFLM+Q>RiwN_Ie9oIx0^flr zvqtS{lIO9d1SzWNl(j3Vip=W!KNihcxn?bseF4CfR$!kF&sC~T7CJz$R^k4 zN{Fe-1{!A>E%a{Wz$G)jpc|Z00lq1j=(?R8hOO+cb5yIhqj9ZhZcewTM4$XjVt>fL zxUPW`&NPjV(n_5mpUHn8!p}+%C&3hSp=O8%Oje}Z#Tqwj9S@Si39fFcs4;6@!w#S~ z3)S3LCQP~HgznTkX{nCR&+I4(1chKkQAR1^fY|Yw+IXTPXWIw@6#6K^U&S=2gnimD zv}-lRnW}S{9TY4PeR0o9z(b^nGV9J2GMwhDy~c0@;~QMi_nX`l&>K~3+8 zJ5A&dEtV*ohf{P8QRI7B0-I@yZEZrEx)`IFu{-K~X@Tk(#gWuyMFL~_S1+*S8 zO{nh1nH8jAvCW|F5d{-=HCzjdc(GIisV+L7X$E>*j=2{;G0e^KW2d+C@~@Q?w-7B8 z&>$z8#wN%+E}!0<@MDSE`8gFtdCA_4Le#Y^uOVZ%$1}bRrJ{D5DkAf+DsFxL^vmcPD8|F73s9#R7N~OooJr{DkEs!Xu6kLCW7;DlU2+ zN1Q|ZlGT&^-gEb5J3IFmz8)r^vq0Lqu)}+@U4=^`nmn+Wi*JUs3z2kG2&x5!AsGhP zorS3V94goW*P#9-!SKWES)(jaRz4i9&g@sl9J>p9VVU}*rjVS zw^d_@!e)1AW7GU5A-fz)+xEX2MM>ANz;3^$T!s<&g*hVjWF>9`&5k~SI3`Zn!kYIz zn2T)^I(Lr|;b3;l1>n5Y#c0=t&!cX~kUNrb-C44ru&xpW9wP+WI2CARMApk}`KqgB zE@X_BTHAm-F}d>#h01*0kFmDOwIGHM?UJ%^->!W5q=U(@gv{;0w6zf19npEz6*Gy zP1#6r>YjdKOPT!Ms$tpHUzGE`RmbuzN=7KfDP{VFCdH3tcUJfbB!|#FcuxJIKh*I6 z^Qn>6lCE*RjG~<)3`1El@f}Td$q(08boA9Ck5kf*bcAf*^k<$R*2P^MNkpSDOCFLf z+47b_c7wD;+zBp(ACp~kRyBE6@~9!}jXIX_qbHnlavs!4vf@Q28{V$AUioy}Qz$8| z6+f^?714fd^tf&P25~+R{)P~b)@J{{#3Zhb_oKR)pH`q#>>ohqnkiX8rwzV5pJ+Zu zu=gj^DP4|$dWF$W$K#5fLD1d^9LN?E8zVTcxg|C(T@V5zZGHR+<)ttKD`a1IPQ>>0 z)2LNE5wzatGjrF1NUs#49%?(>g_bR<)UlM@1?ii(*KhNYu^=q6jTLY#=J9YDONMr5 zYxt0T@tyBQ4ow9N79-7ge64UF5#nO5?KhKWEqQ9tk^`zt>n*dEmNb=SDQ2zB^zY*H z=gIYZr~Z3UPV&;wk^3mb#cb+2Sx+u{pIQ-5=j=T5uk5y8*=4g&>1=4f4SA~`vsD5d z>*{}`SeU^EHG(i&DpwmTrA@^W-!F^)^zG}43)`fZYhO1vNizGV5!%%xD<(|!*l&mk_~Zb=8tUYs(lmr!5sOsX6Xc&Gi61+;r>h4X9}q?-Ahr?nnU8u zCRFC+-yW)a3XLp_rF_sYXqYned&H0qK_*%(T)jay2%==#(w?lDBx9#XMUV?IS4THu`QhFw^=zk8+r&1ChcV*}OrJIoF+o zxE8aCY!|FBjP9^Yz|E-twta@pd4cBVDKRm+@8f(Bvqv(T@a*_@N(q0rA;sgKVj@1y znvB^3GGsUY)4zC~je}rD^AgUeGE<=`iv#kaJfqlm$jt^Izgq~|r03ZTNz^j)K(?94 z@&^q3W)oO zGcNkOkMeCBA7x{-(YRn}CrKVmK@^i%eOk$(yU6W3YvBsGJIr*M6<1E>5xb(oFCz-q zypzr!FmtYoXIs8^bqJz$rGf?1<^l9ADk`+|bqQ!E-65znHrEIoEft)mMbWgFGd zEMu`(E&(6)lX$wloq7f|<u*%kf3t^Vv8JS=S}5$0yqQ~P3SYF z8cWYu_o-)^X*4fXn)wNGd0y~UoJC~U7lNsz+QV9lM&Dp}9mGbe>_wsvU5ZMF|v&(K$kyjMwP{pNtE9N zz&8+@z1rgkk?#!AYw|pwT~n9I#6xz-OFHL$=)z%afOUcai^<@cu)y{~Uz@k%$mBI7-NOL^QPjdUQM=0JVJFk z2!LRc&@um~7xdbH_dR70p`f1e|9e3!)t?0b2%`W#+242kZ(RSkWfF*?0MGkU?!Q<5 E2YUc^761SM delta 10319 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 diff --git a/jar/PDConcurrent_sources.jar b/jar/PDConcurrent_sources.jar index 8370a0a1af54af0e9e2b6d19455b2a401e445993..84689efbb65b717870a6b6dded61b6ef6a3b335c 100644 GIT binary patch delta 7433 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 O5Q6^*(KIZ7A^rzW?e^OM diff --git a/pom.xml b/pom.xml deleted file mode 100644 index 1478c00..0000000 --- a/pom.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - 4.0.0 - - fybug.nulll - PDConcurrent - 0.1.0 - - - org.projectlombok - lombok - LATEST - - - jakarta.validation - jakarta.validation-api - LATEST - - - jakarta.annotation - jakarta.annotation-api - LATEST - - - - - - org.apache.maven.plugins - maven-javadoc-plugin - 3.0.0 - - - UTF-8 - UTF-8 - UTF-8 - -Xdoclint:none - - - - attach-javadocs - package - - jar - - - - - - - \ No newline at end of file diff --git a/src/main/java/fybug/nulll/pdconcurrent/RWLock.java b/src/main/java/fybug/nulll/pdconcurrent/RWLock.java index bbd33e3..6cc7255 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/RWLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/RWLock.java @@ -297,6 +297,8 @@ class RWLock implements SyLock { /** * 获取读锁{@link Condition} * + * @return {@link ReentrantReadWriteLock.ReadLock}的{@link Condition} + * * @see ReentrantReadWriteLock.ReadLock#newCondition() * @since 0.1.0 */ @@ -307,6 +309,8 @@ class RWLock implements SyLock { /** * 获取写锁{@link Condition} * + * @return {@link ReentrantReadWriteLock.WriteLock}的{@link Condition} + * * @see ReentrantReadWriteLock.WriteLock#newCondition() * @since 0.1.0 */ diff --git a/src/main/java/fybug/nulll/pdconcurrent/ReLock.java b/src/main/java/fybug/nulll/pdconcurrent/ReLock.java index 02deb44..fbf385b 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/ReLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/ReLock.java @@ -164,6 +164,8 @@ class ReLock implements SyLock { /** * 获取{@link Condition} * + * @return {@link ReentrantLock}的{@link Condition} + * * @see ReentrantLock#newCondition() */ @NotNull diff --git a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java index 8a9e548..4526b1a 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/SyLock.java +++ b/src/main/java/fybug/nulll/pdconcurrent/SyLock.java @@ -66,7 +66,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void lock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) @@ -77,7 +76,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -140,6 +139,8 @@ interface SyLock { * * @return 回调返回的内容,遇到异常不返回 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @implSpec 如果有传入 {@code finaby} 回调则返回值由{@code finaby}主导,传入{@code finaby}的值根据是否发生异常传入{@code run}的返回值或{@code null}
* 任意一个回调为空时直接穿透,使用上一个正确执行的值进行传递或者返回,发生异常会执行{@code finaby}但是不会返回内容 * @see trySupplier @@ -159,19 +160,19 @@ interface SyLock { * @param run 执行的回调 * @param finaby 进入finally块后的回调 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see tryRunnable * @see Runnable * @see LockType * @see #trylock(LockType, trySupplier, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void trylock(@NotNull LockType lockType, @NotNull tryRunnable run, @Nullable Runnable finaby) throws Exception { trylock(lockType, () -> { run.run(); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -190,6 +191,7 @@ interface SyLock { * * @return 回调返回的内容,遇到异常不返回 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see trySupplier * @see LockType * @see #trylock(LockType, trySupplier, Function) @@ -207,6 +209,7 @@ interface SyLock { * @param lockType 锁类型 * @param run 执行的回调 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see tryRunnable * @see LockType * @see #trylock(LockType, trySupplier, Function) @@ -340,7 +343,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void read(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.READ, () -> { @@ -349,7 +351,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -395,7 +397,6 @@ interface SyLock { * @see #lock(LockType, trySupplier, Function, Function) * @since 0.1.0 */ - @SuppressWarnings("unused") default void write(@NotNull tryRunnable run, @Nullable Consumer catchby, @Nullable Runnable finaby) { lock(LockType.WRITE, () -> { @@ -404,7 +405,7 @@ interface SyLock { }, catchby == null ? null : e -> { catchby.accept(e); return null; - }, finaby == null ? null : r -> { + }, finaby == null ? null : _ -> { finaby.run(); return null; }); @@ -422,6 +423,7 @@ interface SyLock { * * @return 回调返回的内容,遇到异常不返回 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see trySupplier * @see LockType#READ * @see #trylock(LockType, trySupplier, Function) @@ -437,6 +439,7 @@ interface SyLock { * * @param run 执行的回调 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see tryRunnable * @see LockType#READ * @see #trylock(LockType, trySupplier, Function) @@ -460,6 +463,7 @@ interface SyLock { * * @return 回调返回的内容,遇到异常不返回 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see trySupplier * @see LockType#WRITE * @see #trylock(LockType, trySupplier, Function) @@ -475,6 +479,7 @@ interface SyLock { * * @param run 执行的回调 * + * @throws Exception 异常类型根据实际运行时回调抛出决定 * @see tryRunnable * @see LockType#WRITE * @see #trylock(LockType, trySupplier, Function) @@ -493,6 +498,8 @@ interface SyLock { /** * 获取传统并发实现 * + * @return 获取的并发控制对象 + * * @see ObjLock */ @NotNull @@ -502,6 +509,8 @@ interface SyLock { /** * 获取可重入锁实现 * + * @return 获取的并发控制对象 + * * @see ReLock */ @NotNull @@ -511,6 +520,8 @@ interface SyLock { /** * 获取读写锁实现 * + * @return 获取的并发控制对象 + * * @see RWLock */ @NotNull diff --git a/src/main/java/fybug/nulll/pdconcurrent/e/package-info.java b/src/main/java/fybug/nulll/pdconcurrent/e/package-info.java new file mode 100644 index 0000000..561ff75 --- /dev/null +++ b/src/main/java/fybug/nulll/pdconcurrent/e/package-info.java @@ -0,0 +1,8 @@ +/** + * 枚举包 + * + * @author fybug + * @version 0.0.1 + * @since PDConcurrent 0.1.0 + */ +package fybug.nulll.pdconcurrent.e; \ No newline at end of file diff --git a/src/main/java/fybug/nulll/pdconcurrent/fun/tryConsumer.java b/src/main/java/fybug/nulll/pdconcurrent/fun/tryConsumer.java index b3ba660..c02de60 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/fun/tryConsumer.java +++ b/src/main/java/fybug/nulll/pdconcurrent/fun/tryConsumer.java @@ -5,6 +5,8 @@ import jakarta.annotation.Nullable; import jakarta.validation.constraints.NotNull; /** + * @param 传入的参数类型 + * * @author fybug * @version 0.0.2 * @see Consumer diff --git a/src/main/java/fybug/nulll/pdconcurrent/fun/tryFunction.java b/src/main/java/fybug/nulll/pdconcurrent/fun/tryFunction.java index 060841c..aeeed13 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/fun/tryFunction.java +++ b/src/main/java/fybug/nulll/pdconcurrent/fun/tryFunction.java @@ -5,6 +5,9 @@ import jakarta.annotation.Nullable; import jakarta.validation.constraints.NotNull; /** + * @param 传入的参数类型 + * @param 返回的参数类型 + * * @author fybug * @version 0.0.2 * @see Function diff --git a/src/main/java/fybug/nulll/pdconcurrent/fun/trySupplier.java b/src/main/java/fybug/nulll/pdconcurrent/fun/trySupplier.java index 1733f24..d1b8ebf 100644 --- a/src/main/java/fybug/nulll/pdconcurrent/fun/trySupplier.java +++ b/src/main/java/fybug/nulll/pdconcurrent/fun/trySupplier.java @@ -5,6 +5,8 @@ import jakarta.annotation.Nullable; import jakarta.validation.constraints.NotNull; /** + * @param 返回的参数类型 + * * @author fybug * @version 0.0.2 * @see Supplier -- Gitee From 1043e74da3a1ac77e18ac4b5c415065c09db9383 Mon Sep 17 00:00:00 2001 From: fybug <1006291762@qq.com> Date: Wed, 8 Jan 2025 16:56:31 +0800 Subject: [PATCH 18/18] =?UTF-8?q?=E7=A7=BB=E9=99=A4=E5=A4=9A=E4=BD=99?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle | 5 +---- jar/PDConcurrent_bin.jar | Bin 15508 -> 15481 bytes jar/PDConcurrent_sources.jar | Bin 11926 -> 11899 bytes 3 files changed, 1 insertion(+), 4 deletions(-) diff --git a/build.gradle b/build.gradle index 1984629..37a7b5a 100644 --- a/build.gradle +++ b/build.gradle @@ -68,7 +68,7 @@ tasks.withType(Jar).configureEach { 'Build-Jdk-Spec': 23, 'Bundle-Description': 'java并发控制工具', 'Bundle-Name': 'PDConcurrent', - 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', + // 'Bundle-DocURL': 'https://apidoc.gitee.com/fybug/PDConcurrent/', 'Bundle-Vendor': 'IntelliJ IDEA', 'Bundle-Version': version, 'Bundle-License': 'https://www.apache.org/licenses/LICENSE-2.0', @@ -80,7 +80,6 @@ tasks.withType(Jar).configureEach { tasks.register('PDConcurrent_bin', Jar) { dependsOn classes destinationDirectory = file('jar') - // manifest { attributes(manifest_val()) } archiveFileName = 'PDConcurrent_bin.jar' archiveClassifier = '' // 打包编译输出 @@ -91,7 +90,6 @@ tasks.register('PDConcurrent_bin', Jar) { tasks.register('PDConcurrent_sources', Jar) { dependsOn classes destinationDirectory = file('jar') - // manifest { attributes(manifest_val()) } archiveFileName = 'PDConcurrent_sources.jar' archiveClassifier = 'sources' // 打包源码 @@ -101,7 +99,6 @@ tasks.register('PDConcurrent_sources', Jar) { tasks.register('PDConcurrent_all', Jar) { dependsOn classes destinationDirectory = file('jar') - // manifest { attributes(manifest_val()) } archiveFileName = 'PDConcurrent_all.jar' archiveClassifier = 'all' // 打包编译输出 diff --git a/jar/PDConcurrent_bin.jar b/jar/PDConcurrent_bin.jar index 6899086d1faf720f96032c4d4a0e2fd6a4fc3cd2..3e78b12bf035f2071850f0ea33c68fc1d9007403 100644 GIT binary patch delta 857 zcmbPI`Llv2z?+#xgn@yBgW*HlL>_hC4{aJzOENxOc*(%PAUDxLroP`Xi^))=?K^XE zdyK+Ki@Q_aygC!$wnl{IyJ2P4EfZsvnS62!E=*l|A$I!GE$RU_0WA4}vaY-S?*Cr@ z=Y5~FDf9D>ENgv^@Mq9^D_D_QS*#bOE z!;hcw;I&{^U$d$2*g)d5 zm3ufrw5D!17m%L3&D<0<{3rh~Hw8)PTgaHYFfuTtRVJ0D>j!u=VU`xrODY=QVO6%moTTy_Ad(q zgO(5jgC5){28Jb#{k&j>FL?Pd?5}ZJ_VF(>P!rJKsG4p}vbF`;WN$6Qq$mz_y!7M> zYe{*KO)o<_)Pva=7(VkeFsP!~bZ_zoYZI_*lJ7^zcylr^{1!)7Q=&Y1qqWRr1sidY W@s>6+Oia39Gjmmt?CSg3ls{uy_y={)_?wg zX1?{hCn8?m#}m9(iaOgq+Ud7{($1rQS)DH*U2^KhyXu|4f6WfLecqQn*v4c2#}y0* zC)Af-2${vqw@}1QY@2V@BmF(~H`mPi-v9Q~_R46}*Yls1*3OdsWNA<$&lc5rN+RH! z%;KYuoey0&b8At`luu5}q9*u6F(`eRQx+au_41?*+tjSX0c&)g?37tx(UYh5V&ii6 zKHq4|iA*7!&!?8g3da=~GB5IV``kC(q_a80qH9CF0Xy4{)-APH);|32_+r)2`Ag z>B+OrO;ICh@?CRNc~G=5009$-00K4$1tbL+-a5ulHnb20Y4)&?v2F#%Y+7YfX}W%1 zX--a#et zgzIKtSkkCES>MtEq&w46hVjPaivmGE6^ZfF{UH-efHf5;+YN=~o7ds81HK0ox*HBf})C b3%12lmq#qXn-v@@0>CJ_2K3|#bCA&hruZ4; diff --git a/jar/PDConcurrent_sources.jar b/jar/PDConcurrent_sources.jar index 84689efbb65b717870a6b6dded61b6ef6a3b335c..ecd6bd634795df52c186da40841d6dc8dc4d9469 100644 GIT binary patch delta 537 zcmbOh`#Xjwz?+#xgn@yBgW*HlL>_hC4{aJzOENxOc*(%PAUDxLroP`Xi^))=?K^XE zdyK+Ki@Q_aygC!$wnl{IyJ2P4EfZsvnS62!E=*l|A$I!GE$RU_0WA4}vaY-S?*Cr@ z=Y5~FDf9D>ENgv^@Mq9^D_D_QS*#bOE z!;hcw;I&{^U$d$7+IrX|xf#>tLM(vvT1YB8M$F=Z#qXlXHVF#(xclZ${%A!e}XZY^u3qaddAQ2tOiV0rZUl?q=HfLJT235sASw_d4X+8&(YsXZ?1(!L^ z#XI@FjuulS4_Ih556@&HT`i^)0${F`AjI@(x^hh6LSUhlLfn(@09C9I2XlXkb5GXO U(_*?N59XHYNwaln0Hd7&04)m1)c^nh delta 563 zcmewzGcA@Uz?+#xgn@yBgCVD7B9A(6PK!oV{TdH97Dfh!=!p(8^%ETP4jBlzexF#x z9)FGjmmt?CSg3ls{uy_y={)_?wg zX1?{hCn8?m#}m9(iaOgq+Ud7{($1rQS)DH*U2^KhyXu|4f6WfLecqQn*v4c2#}y0* zC)Af-2${vqw@}1QY@2V@BmF(~H`mPi-v9Q~_R46}*Yls1*3OdsWNA<$&lc5rN+RH! z%;KYuoey0&b8At`luu5}q9*u6F(`eRQx+au_41?*+tjSX0c&)g?37tx(UYh5V&ii6 zKHq4|iA*7!&!?8g3da=~GB5IV``kC(q_a80qH9CF0Xy4{)-APH);|32_+r) z`(D3c-0Z>_q|TJnGI@rEDQXZ+zNHb&7(ZE0)0nY!a+0Pc(?-V051FMW@6gm@dIe$r z*VJKBWde(OXjwApGJ~1(v}~CkfSB@=|7dA3$+Cc%wk(2^^L2S9A7>HaVSs`qjW-~Y zKUf4NZ`RggI>iQ7`%l}7X%`2Wd5c3}a;A