Chat Logs

  1. * Bahhumbug joined #java
  2. * hwpplayer1 joined #java
  3. * Fiji joined #java
  4. llanhmockp
  5. llanhmock33333333333333333333333333333333
  6. llanhmocksorry about that folks
  7. * Flow joined #java
  8. Opticcats eh
  9. Opticalways causing trouble
  10. * acidsys joined #java
  11. * deavmi joined #java
  12. * braxas joined #java
  13. NeXeNyes! i did it
  14. NeXeNyou know, building a rom for nes isn't that hard. they're very simplistic. i'm working on building a rom editor/game engine for nes and i got my first little sprite to move around with the joystick
  15. NeXeNi love that feeling when it actually works, but i hate it because that means now you know you have all this work ahead. usually where my personal projects meet their end
  16. * Solstice_21 joined #java
  17. NeXeNi don't understand the opcodes well but at least i can implement the spec. going to take forever to figure out what everything does
  18. * Para joined #java
  19. Opticthat's a great education project
  20. NeXeNi was bored. and i was also debugging a problem with my joystick, then decided hey i can just go ahead and do a little more
  21. * Cae2 joined #java
  22. * Bahhumbug joined #java
  23. * hwpplayer1 joined #java
  24. * viju joined #java
  25. * deavmi joined #java
  26. * evilscreww joined #java
  27. * iusr joined #java
  28. * iusr joined #java
  29. * ferdna joined #java
  30. * acidsys joined #java
  31. * ramontjunior joined #java
  32. * pebble joined #java
  33. * MonsterAbyss joined #java
  34. * metalmaniac joined #java
  35. * MonsterAbyss joined #java
  36. * acidjnk joined #java
  37. * leppard joined #java
  38. * Inline joined #java
  39. * MonsterAbyss joined #java
  40. * odinsbane joined #java
  41. odinsbaneI have an `Executors.newSingleThreadExecutorService` it spontaneously ends up not accepting new tasks.
  42. odinsbaneThere is a point in the code where I call a shutdown, but that occurs on a windows listener when the window is closed.
  43. odinsbaneIs there any other reason I would suddenly start getting "RejectedExecution" exceptions while using a single thread executor service.
  44. * jaskarth joined #java
  45. odinsbaneThe only thing I can think of is a spurious windowclosed event gets passed even though the window isn't closed.
  46. odinsbane... that doesn't make sense though because in that case a flag is set that would cause warnings to occur.
  47. NeXeNhrmm lets see...
  48. NeXeNwell, swing does have a little issue with race condition on window teardown
  49. NeXeNwindow listeners can trigger RejectedExecutionExceptions
  50. NeXeNmight have duplicate listeners as well, which is easy to do. and they can sometimes be doing things
  51. NeXeNbut afaik, the newSingleThreadExecutor() uses an unbounded link blocking queue, and it only throws rejected execution when the queue reaches maximum capacity, or usually the executor is shutting down, so yeah the window event is where i would look
  52. NeXeNalso if you tell me what you did before you suddenly started seeing anything, 75% chance that is it
  53. odinsbaneIt only happens when I run my program through fiji. If I run it stand alone, it works. I have tried to repeat exactly what I did, and I cannot repeat the problem.
  54. NeXeNyeah, https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/concurrent/Executors.html#newSingleThreadExecutor() it is unbound queue
  55. nevetExecutors (Java SE 21 & JDK 21)
  56. NeXeNdoesn't fiji have it's own lifecycle, memory, and window management behaviour?
  57. odinsbaneYes, I am not sure of all the differences.
  58. NeXeNif you're depending on Executors.newSingleThreadExecutor()'s auto closing wrapper, maybe try to construct a concrete threadpool yourself, and just keep explicit reference lifecycle tied to the window's own lifecycle
  59. NeXeNthat way you are the one in control, and you're not depending on the who knows what is going on within that lifecycle, because from what you said that's my first instinct is lifecycle management
  60. odinsbaneI'm not using the autoclose, I just use it to create an exector. Then when the window gets closed, it shutsdown the executor.
  61. * Inline joined #java
  62. * JazzJackalope9 joined #java
  63. * Chai-T-Rex joined #java
  64. deebounless you constantly need new ones for some reason, just create one and tie it to the process' exit listener to shut down
  65. * leppard joined #java
  66. * sa02irc joined #java
  67. * mwnaylor joined #java
  68. NeXeNyeah, explicitly manage it is the fool proof way
  69. * ChaiTRex joined #java
  70. * MikeBux joined #java
  71. * JonathanD joined #java
  72. * Solstice_21 joined #java
  73. deeboanyone using apache hc5 with connection pooling in spring boot and creating a single pool shared between all clients (web/restclient)? would be interested in seeing configs as i can't come up with a config that is not annoying to read and might get broken in upgrades
  74. deebothe autoconfiguration for these is soooo complicated, and there's no trivial path to a shared connection manager without losing some spring internal config bindings etc
  75. * Solstice_21 joined #java
  76. * GreenResponse joined #java
  77. * Solstice_21 joined #java
  78. * michele2 joined #java
  79. * Soulcatcher joined #java
  80. NeXeNwell if you wanna share hc5 connection pool across both the rest client and web client, you could probably ....hold on let me read the docs real quick
  81. NeXeNok, so if you make a bean to back both client builders....and of course you'd want a closeable http client...hrmm
  82. ParaI think I've done that somewhere.
  83. ParaNow is it public, hmm...
  84. NeXeNhttps://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/http/client/reactive/HttpComponentsClientHttpConnector.html ok found what i was looking for
  85. nevetHttpComponentsClientHttpConnector (Spring Framework 7.0.9 API)
  86. Para(FWIW I don't like Apache HC, after version 3 they went full design patterns for patterns' sake)
  87. NeXeNis that not the worst named class ever?
  88. NeXeNwait, RestClient is blocking, and webcleint is non-blocking async....ok so you'll want async request factory or ....i dunno maybe both builders share the same configuration/customizer
  89. NeXeNyeah you are right deebo, it is complicated
  90. * Fiji joined #java
  91. NeXeNPara: design patterns are nice when you recognize them, not so nice if you gotta look them up in a catalogue
  92. * jamezp joined #java
  93. * fstd joined #java
  94. * kelt0m joined #java
  95. * m joined #java
  96. * Inline joined #java
  97. * leppard joined #java
  98. * kinabalu_ joined #java
  99. * DynamiteDan_ joined #java
  100. * erbium_ joined #java
  101. * Geolykt joined #java
  102. * jetchisel joined #java
  103. * Disconsented joined #java
  104. * sunyour joined #java
  105. * xerox joined #java
  106. * tronexte joined #java
  107. * mz` joined #java
  108. * Inline joined #java
  109. * leppard joined #java
  110. * metalmaniac joined #java
  111. * m joined #java
  112. * ChaiTRex joined #java
  113. * deavmi joined #java
  114. * Inline joined #java
  115. * leppard joined #java
  116. * m2 joined #java
  117. * ghostpepper joined #java
  118. * ChaiTRex joined #java
  119. * ramontjunior joined #java
  120. * m joined #java
  121. * Exagone313 joined #java
  122. * AStorm joined #java
  123. * deavmi joined #java
  124. * johnjay joined #java
  125. * jjakob joined #java
  126. * deavmi joined #java
  127. * Solstice_21 joined #java
  128. * leppard joined #java
  129. * johnjay joined #java
  130. * Ragnor joined #java
  131. * johnjay joined #java
  132. * Betal joined #java
  133. * ChaiTRex joined #java
  134. * johnjay joined #java
  135. * deadbeat joined #java
  136. * Adrian35 joined #java
  137. * marcel joined #java
  138. * ChaiTRex joined #java
  139. * creechy joined #java