I'm aware of WinCache, and in fact have it as one of the adapters, along with APC. The initial idea behind this package was to give APC locking capabilities, while enabling the use of WinCache as an alternative, if it's available.
In other words, PEAR2_Cache_SHM is to APC what PEAR_MDB2 is to MySQLi - an abstraction layer with a few gap fillers.
The problem with *simply* using WinCache (without such a package) is that its lock function crashes PHP when you run it from the command line. I've already submitted a bug report for that too:
https://bugs.php.net/bug.php?id=60819 And the problem with using other extensions with locks like Semaphore is that they're UNIX only, and I don't have the means (including, but not limited to, knowledge) to test such a setup.
> BTW, running PHP_CompatInfo with PHP 5.3.9 on your source code gave me fake negative.
Given that I haven't made any tests, your negative may not be a fake one :-D .
> You should exclude NetBeans project configuration from your repository
I like to keep it for the sake of syncing across my two dev PCs. It's not going to be part of the packaged TGZ anyway, so where's the harm :-P ? If other developers want to use other IDEs and store their configuration in the repository, I have no problem with that, as long as they've contributed more than the config itself and all developers using that IDE agree on a configuration.
> Don't forget to test it with mod FASTCGI on IIS or Apache
Funny, you're saying that as if PHPUnit can run from FastCGI... wait... can it? How?
(I have IIS 7.5 on one machine and Apache 2.2 on another one, though running PHP as a module and not FastCGI)
From: Laurent Laville [mailto:pear@...]
Sent: Saturday, January 21, 2012 1:02 PM
To: Васил Рангелов
Cc: pear-dev@... Subject: Re: New package (sort of...) - PEAR2_Cache_SHM
Le 20/01/2012 21:56, Васил Рангелов a écrit :
> Previously, I wrote asking about PEAR2_Cache, but since no one said
> anything, I'm assuming there's nothing in the works, correct?
> Well, I've made an initial implementation of a shared memory package,
> and would highly appreciate comments on it, as I'm new to these kinds
> of locks and stuff, at least in terms of PHP (my experience starts and
> ends at C#'s lock language construct).
> A particular point I'm specifically looking towards... does anyone
> have an idea how to unit test such a package (on Windows too)?
> Anyway, the package is currently at
> https://github.com/boenrobot/Cache_SHM >
> Vasil Rangelov
I've just have a look on your source code at GitHub, and I want try to help you a little.
I've learnt, with your proposal, that extension wincache exists.