Jump to content
  • Advertisement
  • entries
  • comments
  • views

Signals: Getting there slowly but surely

Sign in to follow this  
Trapper Zoid


It seems my initital confidence in the performance of my signal code was misplaced. Once I put in the disconnections capabilities I realised I'd missed a few details to do with the double linked list in the memory block, and with some extra guards I need to throw in it now is a bit slower than my initial test. Furthermore my first speed test involved connecting the same empty function to a signal a million times, and it was silly not to expect the compiler to make some optimisations there. With a few more tests I reckon my code is roughly the same or slightly slower than sigslot, but at least it does what I want it to do and is extendable. It's fine for the first prototype.

I've now got the full suite of features needed for this kind of signal up and running; signals can connect and disconnect slots, and both appear to perform nicely with each other when deleted. I'll need to clean up the code a bit more to make it usable in a larger system, and a few more tests to be on the safe side is a good idea, but I think it's nearly prototype ready. I can then move on to the signals that can send arguments and make a few variants.

It's also now only one month before the competition I've started gets underway, so I need to put a bit of time into some preparation. By the weekend I should have a working draft of some rules up, and by the end of next week I need to nail down exactly what format this competition will take. I'll start posting more topics in the forums on this in days to come, partly to solicit suggestions, partly to spread the word about the competition.
Sign in to follow this  


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!