Craig Chapman

Member since: Thursday, 16 April 2015
Last login: 5 years ago
Profile viewed: 5,251 views

Your Rank: 90
Points: 4

REST Services using Delphi: http://chapmanworld.com/wp-content/uploads/2018/08/RAD-Server-for-REST-Delphi.mp4 REST Services usi ...

Introduction A while back I wrote a component for exposing FireDAC tables as REST ...

What is darkVulkanGen? A handful of months back, I began working on a game engine for Delphi named darkGlass. see: http://chapmanworld.com/darkglass/

My regular readers may be aware that over the past two or three months, I’ve been working on building a new video game engine for Delphi. I’ve also had many other demands on my time, which has meant that I’ve not posted in a while. Today however, ...

My regular readers may be aware that over the past two or three months, I’ve been working on building a new video game engine for Delphi. I’ve also had many other demands on my time, which has meant that I’ve not posted in a while. Today however, ...

?Here’s a little Déjà vu for regular readers of my blog. One of my customers emailed me with an interesting problem this morning. “I need to be able to peek into a video file, specifically a .mp4 file, and determine if ...

One of my customers emailed me with an interesting problem this morning. “I need to be able to peek into a video file, specifically a .mp4 file, and determine if it’s PAL or NTSC.” This seemed like a ...

Craig Chapman created new blog post Delphi Xlib headers in Programming 6 years ago

Back in November for CodeRage-12, I demonstrated a partial translation of the Xlib headers for X11. At that time I explained that I’d not completed the he ...

In case you missed it, here’s the Delphi podcast for Feb 27th 2018 – Delphi Game Engines (skip to about 9:30 to spare yourself the technical difficulties with the stream) ...

As many of you may already be aware, I am now a regular guest on Jim McKeeth’s Delphi podcast along side David Millington. The pod-casts recently became video streamed, and have adopted a more structured “Themed Episode̶ ...

Craig Chapman posted a comment on Lockless Multi-Threading in Delphi 6 years ago

FYI: If you re-watch the last 30 seconds, from time index 35:20, I explain what I just posted in my last comment. Note that the 'test thread' is a class derived from TThread - and note the difference between the 'InPipe' and 'OutPipe' properties. Mes

Craig Chapman posted a comment on Lockless Multi-Threading in Delphi 6 years ago

I think you're missing the second thread in the application. The GUI thread pushes a message into a ring buffer, where an aux thread pulls it, the aux thread then pushes that message into a second ring buffer, where the GUI thread pulls it off. Ther

Morten Lassen is friends with Craig Chapman

Craig Chapman posted a comment on Lockless Multi-Threading in Delphi 6 years ago

In modern versions of Delphi, you should switch to DisposeOf() always. DisposeOf exists to handle differences between the desktop compilers (without ARC memory management) and the mobile compilers (with ARC). Technically if your code will never be us

Craig Chapman posted a comment on Lockless Multi-Threading in Delphi 6 years ago

It's true that the UI thread does both a push and a pull, but those operations are on two different arrays. The second thread is simply copying messages from the first array to the second. While I agree this is a very simple example, it demonstrates

Jay M59544 is friends with Craig Chapman

Craig Chapman posted a comment on Lockless Multi-Threading in Delphi 6 years ago

Two independent threads put messages into, and remove messages from a dynamic array, allowing communication between those threads. This happens without using locking mechanisms such as TCriticalSection. There is literally a descendant of TThread in t