Talk:Object pool pattern
|WikiProject Computer science||(Rated Start-class)|
My English writing skills aren't up to much, so I can't really clean up this article, but I'm happy to monitor the technical content, and ensure that a rewrite by someone with English skills (but no tech knowledge) doesn't get the tech wrong.
Rewrite done - could do with checking over by a Wikipedia regular 188.8.131.52 11:44, 16 March 2006 (UTC)
Moved from Talk:Object cesspool
This article has little value. It might as well be called "I had some bugs in my code that were interesting to me, and I came up with a cute name for it."
- Above was by 184.108.40.206
 has a comment by user "christoofar" "This is offtopic, but Oliver Klozoff and I have finally finished battling a problem with a C++ component written at my company that warranted a new design antipattern article (I added it to wikipedia) http://en.wikipedia.org/wiki/Object_cesspool"
I'm going to nominate this on AFD because it seems to be a neologism; and should be on the Portland repository  first if it was notable. (In my blatently POV opinion, I think it's fairly apparent to anyone trying to write an object pool.) -Tenbaset 00:34, 6 October 2005 (UTC)
I have just extended object pool to include a brief (and poorly written) explanation of object cesspools. -220.127.116.11 11:05, 6 October 2005 (UTC)
Since the term is in common use, this page is valuable.
- Please provide references if this is the case --18.104.22.168 15:21, 18 October 2005 (UTC)
Definition of an Object Pool
I've added some external references and links. There seems to be some confusion over what exactly an object pool is. For example, this Inform IT article classifies it as a memory pattern rather than as a creational pattern, and describes it slightly differently as "Pool Allocation Pattern works well by creating pools of objects, created at startup, available to clients upon request", whereas many other sources describe this pattern more as a recycling method that can still dynamically allocate objects on demand if one isn't already available in the pool. e.g., from the EuroPlos conference paper: "To increase efficiency, the resource pool eagerly acquires a static number of resources after creation. If the demand exceeds the available resources in the pool, it lazily acquires more resources." Saigyo 11:32, 9 June 2007 (UTC)
The last sentence of that passage is non-sense and off-topic. It suggests something that was not stated in its reference in the way represented here.
It should be more like "In some cases, programs that use garbage collection instead of directly managing memory may run faster ." OR even completely removed.
Any reason for the existence of the InUse list in the C# example?
The pitfalls section (how is that even different than criticism?) is written very poorly. It's like an advertisement for not using it more than actual issues. "You have to be sure to clear all your data!" Welcome to programming. We might as well have big glaring red banners every time someone "reuses" a string variable in a piece of code. If you're smart enough to be reading up on static pools, then you're already smart enough to understand what happens when you leave a dangling pointer or don't clean your data when you re-use it.
Articles should understand their target audience. Differential Equations articles don't need to explain what a variable is. Object pools don't need to explain every way re-using incorrectly reset data can break your program.
The entire section could be reduced to couple sentences merely mentioning the issue (so people remember it) instead of rallying against the use of object pools.